나 개인적으로 질문에 답을 알고,그렇습니다,그것은 목록의 항목입니다. 귀하의 경우에는 경우에,문서 텍스트를 포함뿐만 아니라,사진을 나는 실제로 모든 이미지를 중포 기지 스토리지 및 텍스트를 Firestore,그리고 그들을 링크로 이미@FrankvanPuffelen 에 언급된 그의 대답이다. 그 외에,로@ToddKerpelman 국에서는 다음과 같은 대답:
를 추가하지 않는 사진을 Firestore. 클라우드 저장소 에 대한 의미입니다.
에 대해 생각하고 귀하의 사용 사례를 얻기 위해,"정상"는 제한,다른(유사)접근 방식이다. 하는 대신 모든 데이터를 저장 하나의 문서에서,나는 그것을 추가하여 여러 문서를 다음과 같다:
Firestore-root
|
--- articles (collection)
|
--- $articleId (document)
|
--- articleParts (collection)
|
--- $firestoreRandomId
| |
| --- text: "Text of the article"
| |
| --- part: 1
| |
| --- articleId: $articleId
|
--- $firestoreRandomId
|
--- text: "Remaining text of the article"
|
--- part: 2
|
--- articleId: $articleId
당신이 볼 수 있듯이,각각의 문서 부분으로 구성됩니다. 하는 모든 정보 데이터베이스를 만들어야 합 collectionGroup ,쿼리에는 다음과 같이:
db.collectionGroup("articleParts");
을 읽고 각각의 문서는 개별적으로 단순히 연결하는 모든 부품에 대한 각각의 문서에 따라 articleId
고할 수 있습니다.
다른 측면에서,당신만을 읽고 싶어 하나의 문을 만들에 대한 참조는 포인트:
db.collection("allArticles").document($articleId).collection("articleParts");
와 동일한 작업을 수행합니다.
할 수 있습니다 또는 사용:
db.collectionGroup("articleParts").whereEqualTo("articleId", someId);
하지만 여기지 않도 잊을 만들 index.
이 방법을 만들 수 있습으로 많은 문서 당신이 원하는 단일 문서입니다. 안드로이드,내가 만들어 라이브러리 호출 FirestoreDocument-안드로이드도움이 될 것입니다 당신은 항상 확인할의 크기에 대해 문서 의 최대 1MiB(1,048,576 바이트)을 할당. 그렇다면 이 문서는 보다 더 큰 최대한 제한,분할 문서의 내용을 추가서 여러 문서입니다.