Search

This core reference entry is suited for beginner-level builders to intermidiate level builders.

Learn more about experience levels.

These are the search options and operators to use when performing searches by using the Do a search for data source.

Ignore empty constraints

Our Academy quick tip on how to ignore empty constraints
  • If this checkbox is checked, constraints using values evaluating to null will be ignored. In other words, if a constraint evaluates to null, all items will be returned.

  • If this box is not checked, the search will only return items whose field's value is actually null. Note that this does not apply to the Advanced filter.

Type

Select the type of things you looking for.

Constraints

Watch our Academy quick tip on how to use search constraints

Enter the different constraints to apply to this search.

circle-info

Text matching in the database is limited to the first 256 characters for indexing purposes. If you need to match text longer than 256 characters in a search, consider appending a "filtered:" with an advanced constraint, saying "<this object>'s <data field> = <search criteria>". The reason you have to do an advanced filter is that it forces the expression to load all the items out of the database and do the full string match, rather than just the first 256 characters.

Sorting field

Choose the field to sort the list. See also: Additional sorting fields.

circle-exclamation

Change which field......

Watch our Academy quick tip to learn how to sort a list

Select this option if you want the sorting field to be dynamic. When selected, another field will display and allow you to define the field. It can be dynamic and should match the name of an existing field. If it does not match, the application will show an error.

Random sorting

Choose this option to randomize the order results. The random value is unique for each user and page load.

Dynamic data and random sorting

Once a random order is generated, it stays the same for the duration of the page session. It will only change if the page is refreshed or if the underlying data is modified, which triggers the search (and its sorting) to run again.

Example 1:

  • A search for colors (random sorting) returns: red, yellow, green

  • A field on “red” is updated (Make changes to action)

  • Re-running the search may produce a new order, e.g. yellow, green, red

Example 2:

  • A search for colors (random sorting) returns: red, yellow, green

  • A new “blue” thing is created (Create a new thing action)

  • Re-running the search may produce a new order, e.g. red, blue, green, yellow

This principle applies to all sorting types: results remain stable as long as the underlying data does not change. Any update or addition causes the search to re-execute and the ordering to be recalculated.

Unsorted

Choose this option to return results without applying any sort order. This can improve performance, especially in larger databases when using the text contains operator.

This is available in the editor database custom views, but not yet rolled out to all the run-mode operators.

Dynamic field name

If you want the search to be sorted according to a field chosen by the user, define an expression to define which field the search should use. For instance, the expression you design here should evaluate to 'Created Date' or some other fields you have defined in your type (it should match the displayed name of the field).

Distance from

When sorting on a location field, results will be sorted by distance relative to a point. This field defines which point. Current position, an address, etc.

Descending

Choose 'yes' to sort in descending order or 'no' to sort in ascending order. This option can be dynamic and defines an expression that returns a yes/no, e.g., a checkbox element.

Adding additional sorting rules

When you need more than one sorting rule, click this button and select a field and a descending/ascending order for that field. The rules will be applied in the order listed.

Any field

Performs a search across all the fields of the application database for a given type. For example, search for all entries with John as a first OR last name.

Advanced

Performs more advanced searches. For example, to find all apartments whose creators have an email hosted by yahoo.com, use 'This apartment's creator's email:extract domain is 'yahoo.com.' This operation happens after the search or list is retrieved from the server and is not as efficient as using constraints on a search.

Last updated

Was this helpful?