Check out v4 of the Fauna CLI

v4 of the Fauna CLI is now in beta.

The new version introduces enhancements to the developer experience, including an improved authentication workflow. To get started, check out the CLI v4 quick start.

Collection.all()

Get a Set of all collection definitions for the database.

Signature

Collection.all() => Set<CollectionDef>

Collection.all(range: { from: Any } | { to: Any } | { from: Any, to: Any }) => Set<CollectionDef>

Description

Gets a Set containing all collection definitions, represented as Collection documents, for the database.

Collection documents are FQL versions of a database’s FSL collection schema. Collection documents have the CollectionDef type. See Collections.

To limit the Set, you can provide an optional range of Collection documents.

If this method is the last expression in a query, the first page of the Set is returned.

Staged schema

If a database has staged schema, this method interacts with the database’s staged schema, not the active schema.

Parameters

Parameter Type Required Description

range

Object

Object describing the range.

Returns all members of the Set greater than or equal to from and less than or equal to to, including duplicates for an unordered Set. If the range is omitted, the method returns all collection objects.

Range fields

Name Type Required Description

from

Any

Beginning of range (inclusive). Must be a Collection document.

to

Any

End of range (inclusive). Must be a Collection document.

Return value

Type Description

Set<CollectionDef>

All collection definition object in the given range.

If the resulting Set is empty, the method returns an empty Set.

For an ordered Set, if from is greater than to, the method returns an empty Set.

If the first member of the Set is greater than or equal to from and also less than or equal to to only that value is returned.

Examples

  1. Get all collections for the database:

    Collection.all()
    {
      data: [
        {
          name: "Customer",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "Product",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "Category",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "Order",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "OrderItem",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        }
      ]
    }
  2. Given the previous Set, get all collections starting with Order:

    Collection.all({ from: Collection.byName("Category") })
    {
      data: [
        {
          name: "Category",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "Order",
          coll: Collection,
          ts: Time("2099-07-30T22:08:57.650Z"),
          ...
        },
        {
          name: "OrderItem",
          coll: Collection,
          ts: Time("2099-07-30T22:08:57.650Z"),
          ...
        }
      ]
    }
  3. Get the Set of collections from Product to Manager, inclusive:

    Collection.all({ from: Collection.byName("Category"),
                     to: Collection.byName("Order") })
    {
      data: [
        {
          name: "Category",
          coll: Collection,
          ts: Time("2099-07-30T22:04:31.325Z"),
          ...
        },
        {
          name: "Order",
          coll: Collection,
          ts: Time("2099-07-30T22:08:57.650Z"),
          ...
        }
      ]
    }

Is this article helpful? 

Tell Fauna how the article can be improved:
Visit Fauna's forums or email docs@fauna.com

Thank you for your feedback!