QUESTPIE
Build Your Workspace

Filters & Saved Views

Filter collection records and save filter presets.

The admin panel generates filters automatically from your field definitions. Each field type maps to appropriate filter operators — no configuration needed.

Auto-Generated Filters

Field TypeFilter Operators
text, textareaContains, equals, starts with, ends with, is empty
numberEquals, greater than, less than, between
booleanIs true, is false
selectIs, is not, is any of
date, datetimeBefore, after, between, is today, is this week
timeBefore, after, between
relationIs (relation picker), is any of
email, urlContains, equals, starts with

Using Filters

  1. Click the Filter button in the list view toolbar
  2. Select a field from the dropdown
  3. Choose an operator (e.g., "contains", "equals")
  4. Enter the filter value
  5. Click Apply — the list updates immediately

Multiple filters combine with AND logic. Add as many filters as needed.

Filter Bar

Active filters show as pills below the toolbar. Each pill shows:

  • Field name
  • Operator
  • Value
  • Remove (×) button

Click any pill to edit it. Click × to remove it.

Custom Filter Display

Control which fields appear as default filters in the list view configuration:

.list(({ v, f }) => v.collectionTable({
  columns: [f.title, f.status, f.author],
  filters: [f.status, f.author, f.createdAt],
}))

Only the fields listed in filters appear in the filter dropdown. If not specified, all filterable fields are available.

Saved Views

Users can save filter + sort combinations as named views for quick access:

  1. Apply filters and sorting to the list view
  2. Click Save View in the toolbar
  3. Name the view (e.g., "Published Posts", "My Drafts")
  4. Access saved views from the views dropdown

Saved views persist per-user and include:

  • Active filters
  • Sort order and direction
  • Visible columns
  • Column widths

The list view includes a text search field that searches across all text-based columns using PostgreSQL full-text search (if the collection has .searchable() configured) or simple LIKE queries.

URL State

Filter and sort state is reflected in the URL query parameters. This means:

  • Filters survive page refresh
  • You can share filtered views via URL
  • Browser back/forward navigates filter history

On this page