Creating Collections

A Collection is a group of documents. For example, you could have a users collection that contains a list of documents, each representing a single user.
User collection document model


Before getting started with this section:

Creating a collection

Here are the steps to create a collection:
  • Click on the Firestore from the Navigation Menu (left side of your screen).
  • Click on the (+) Plus sign button.
  • A popup will appear, enter the collection name and click Create Button.
  • Next, define the collection schema (create Fields) and add some data to the collection.
A collection will only appear on Firebase Console if it contains at least one document.
Creating Collection

Define schema (creating Fields)

A document represents a single item, or entity such as a user, post, animal, etc. To add data inside the document, you must define the document schema by creating Fields. Creating Fields helps you know what kind of data a document can contain.
Although you can add more fields later on, it's always a good idea to add fields in the first place.
Field Names can not be changed, so it's always good to double-check that you have used the correct Field Names.
To define the schema (create Fields) for the document:
  • Select your collection from the list on the left side.
  • If you haven't added any fields yet:
    • You can choose from the template collections that have common fields needed in most applications. This will auto-add all the fields.
    • Or click on Start from scratch to define your own schema.
  • To add a new field, start typing its name (e.g., title, description, date, etc.) and choose the suitable Data Type.
  • While choosing the Data Type, you can set if it will be a list or not using Is List? toggle.
    • You can keep it disabled for storing only a single value. For example, fields such as title, description, price, etc., can have only one value. You can't have multiple titles for a single post.
    • You can enable it to store multiple values of the same data type. For example, to store the list of accessory names for the field accessories.
  • Click on the Done icon.
Define schema (creating Fields)

Data Types within FlutterFlow

The following data types are available within FlutterFlow:
  • String: To store plain text such as title, description, etc.
  • Integer: To store numbers such as 100, 4302, 50000, etc.
  • Double: To store a decimal number such as 12.43, 3233.50, 65.5666, etc.
  • Photo Path: To store the URL of the uploaded image.
  • Video Path: To store the URL of the uploaded video.
  • Audio Path: To store the URL of the uploaded audio.
  • Boolean: To store either a true or false value.
  • Timestamp: To store date and time value.
  • Lat Lng: To store the latitude and longitude of a particular place. Storing the Lat Lng value helps you locate a place in Google Maps.
  • Color: To store the color value.
  • Document Reference: To store a reference of a document. Storing a reference helps you fetch the document data.
  • Data Type: To store custom data types.