CollectionReference
class CollectionReference : Query, @unchecked Sendable
A CollectionReference
object can be used for adding documents, getting document references,
and querying for documents (using the methods inherited from Query
).
-
ID of the referenced collection.
Declaration
Swift
var collectionID: String { get }
-
For subcollections,
parent
returns the containingDocumentReference
. For root collections,nil
is returned.Declaration
Swift
var parent: FIRDocumentReference? { get }
-
A string containing the slash-separated path to this this
CollectionReference
(relative to the root of the database).Declaration
Swift
var path: String { get }
-
Returns a
DocumentReference
pointing to a new document with an auto-generated ID.Declaration
Swift
func document() -> FIRDocumentReference
Return Value
A
DocumentReference
pointing to a new document with an auto-generated ID. -
Gets a
DocumentReference
referring to the document at the specified path, relative to this collection’s own path.Declaration
Swift
func document(_ documentPath: String) -> FIRDocumentReference
Parameters
documentPath
The slash-separated relative path of the document for which to get a
DocumentReference
.Return Value
The
DocumentReference
for the specified document path. -
Adds a new document to this collection with the specified data, assigning it a document ID automatically.
Declaration
Swift
func addDocument(data: [String : Any]) -> FIRDocumentReference
Parameters
data
A
Dictionary
containing the data for the new document.Return Value
A
DocumentReference
pointing to the newly created document. -
Adds a new document to this collection with the specified data, assigning it a document ID automatically.
Declaration
Swift
func addDocument(data: [String : Any], completion: (((any Error)?) -> Void)? = nil) -> FIRDocumentReference
Parameters
data
A
Dictionary
containing the data for the new document.completion
A block to execute once the document has been successfully written to the server. This block will not be called while the client is offline, though local changes will be visible immediately.
Return Value
A
DocumentReference
pointing to the newly created document. -
Adds a new document to this collection with the specified data, assigning it a document ID automatically.
Throws
Error
if the backend rejected the write.Declaration
Swift
@discardableResult func addDocument(data: [String : Any]) async throws -> DocumentReference
Parameters
data
A
Dictionary
containing the data for the new document.Return Value
A
DocumentReference
pointing to the newly created document. -
Encodes an instance of
Encodable
and adds a new document to this collection with the encoded data, assigning it a document ID automatically.See
Firestore.Encoder
for more details about the encoding process.Declaration
Swift
@discardableResult func addDocument<T: Encodable>(from value: T, encoder: Firestore.Encoder = Firestore.Encoder(), completion: ((Error?) -> Void)? = nil) throws -> DocumentReference
Parameters
value
An instance of
Encodable
to be encoded to a document.encoder
An encoder instance to use to run the encoding.
completion
A block to execute once the document has been successfully written to the server. This block will not be called while the client is offline, though local changes will be visible immediately.
Return Value
A
DocumentReference
pointing to the newly created document.