firebase

김예린·2023년 12월 26일
0

파이어스토어(Firestore)란?
구글의 클라우드 기반 NoSQL 데이터베이스

컬렉션(collection): 여러 개의 문서들이 특정한 주제 또는 유형으로 그룹화되어 있는 것. ex) albums
문서(Document): 컬렉션 안에 있는 것. 여러개의 필드로 이루어짐.
필드(Field): 문서 안에 있는 데이터의 작은 부분. ex) image, title, comment

쓰여진 데이터를 읽어서 콜렉션에 저장하는 코드

$("#id").click(async function () {
    let doc = {};
    await addDoc(collection(db, "콜렉션이름"), doc);
})

버튼에 아이디를 부여해서, 버튼을 클릭하면 작동되게 함수를 만든다.
스크립트 타입에 module이 붙으면 스크립트가 맨 마지막에 불리기 때문에 동적으로 코드를 만들어줘야 한다.

위의 코드로 데이터베이스에 저장이 되었다면 웹 브라우저로 가져와서 보여줘야한다.

let docs = await getDocs(collection(db, "콜렉션이름"));
docs.forEach((doc) => {
    let row = doc.data();
    console.log(row);
}); 

데이터베이스에 있는 데이터를 row변수에 담아서 출력해준다.

window.location.reload();

현재 페이지를 새로고침 하는 기능을 제공하는 함수이다.

예시 코드)

$("#addBtn").click(async function () {

  let image = $("#image").val();
  let title = $("#title").val();
  let star = $("#star").val();
  let comment = $("#comment").val();

  let doc = { //입력 폼에서 받아온 데이터들을 각각 변수에 담는다.
      image: image,
      title: title,
      star: star,
      comment: comment,
    };
// movies라는 이름의 컬렉션에 받아온 데이터들을 넣는다.
    await addDoc(collection(db, "movies"), doc)
    alert("영화가 추가되었습니다!");
    window.location.reload();
});

배포란?

코드 작성부터 테스트, 실행 파일로 변환하여 인터넷에 공개하고 업데이트하는 과정이다. 사용자들이 개발한 소프트웨어를 이용할 수 있도록 만들어주는 과정이다.

URL(Uniform Resource Locator)

인터넷에서 특정 리소스의 위치를 나타내는 주소이다. 웹페이지나 파일의 고유한 주소

url의 형식

프로토콜://도메인/경로

프로토콜(protocol): 웹 브라우저와 웹 서버 간의 통신 방식을 지정한다. ex) http:// https://
도메인(domain): 인터넷 상에서 고유한 식별자로 사용되는 웹 사이트의 주소이다. 도메인은 일반적으로 사이트의 이름과 최상위 도메인으로 구성된다. ex) .com, .org
경로(path): 웹 사이트 내에서 특정 페이지나 파일의 위치를 지정한다.

ex) https://github.com/yeriniii/Project1

이 URL은 HTTPS 프로토콜을 사용하며, github.com이라는 도메인에 위치한 yeriniii- Project1라는 경로에 있는 페이지를 나타낸다.

번외) 스크래핑

스크래핑은 인터넷에서 필요한 정보를 가져오기 위해 웹 페이지의 구조와 내용을 읽어오는 것이에요. 스크래핑을 할 때, 우리는 웹 페이지의 HTML 코드를 이용해요. HTML은 웹 페이지의 구조와 내용을 담고 있는 언어인데, 마치 웹 페이지의 뼈대라고 생각하면 돼요. 스크래핑은 이 HTML 코드를 컴퓨터가 이해할 수 있는 방식으로 읽어오는 것이에요.

import requests
from bs4 import BeautifulSoup

URL = "스크래핑하고 싶은 url입력"
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(URL, headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')

그러면 원하는 url의 페이지가 html형식으로 나타내질 것이다.

profile
아자아자

0개의 댓글