1

Cloud Firestore와 그 컬렉션은 데이터 정리에 훨씬 많은 힘을줍니다. 나와 다른 많은 사람들에게는 기본적인 질문이 있다고 생각합니다.Google Firestore 데이터 조직

마스터 세부 관계를 저장하는 더 좋은 방법은 무엇입니까?

이렇게 : "MAKE"속성이있는 문서가있는 "CARS"모음.

"MAKES"에 대해 "CARS"컬렉션과 독립적 컬렉션이 필요하다고 생각합니다.

의견이 있으십니까?

답변

3

특별히 필요한 경우가 아니라면 MAKE를 각 CARS 문서의 필드로 사용하여 쿼리 할 수있는 것이 좋습니다.

MAKE를 열거 형 필드로 제어하려는 경우 ValidMakes라는 컬렉션을 만들 수 있습니다.이 컬렉션에는 허용되는 모든 Mids의 ID를 가진 문서가 있습니다. 보안 규칙에서 쓰기를 허용하기 전에 MAKE 필드의 값과 동일한 ID를 가진 문서가 있는지 확인하십시오.

+0

하지만 MAKE는 미리 정의 된 값 목록 (RDMS가있는 테이블) 또는 여기에 "컬렉션"(?)이 있어야합니다. 가상의 앱에는 관리자 수준이 있으며이 수준의 운영자는 "MAKE"컬렉션. 다른 연산자는 CARS를 추가하지만 관리자가 만든 MAKE 만 선택할 수 있습니다. – GCoe

+1

관리자는 허용 된 모든 ID를 가진 문서가있는 ValidMakes라는 컬렉션을 만듭니다. 보안 규칙에서 쓰기를 허용하기 전에 MAKE 필드의 값과 동일한 ID를 가진 문서가 있는지 확인하십시오. –

+0

매우 흥미 롭습니다. 지금까지는 액세스 제어만을 위해 규칙을 생각하고 있었지만 "참조 무결성"과 같은 용도로 사용할 수 있습니다. 하지만,이 경우 MAKES 컬렉션의 내용 만 (SELECT로) 연산자에 노출 할 수 있습니다.이 경우에는 규칙이 필요 없습니다 ... (내 나쁜 영어를 사과하십시오) – GCoe

관련 문제