Skip to content

Updating visuals

If you see any images containing outdated UI, please bear with us.

We are updating all content as quickly as possible to mirror our new UI.

Views

Views let you create reusable “saved lists” of records from a table, with filters, sorting, and optional parameters (dynamic inputs).

They’re useful when you want to show different parts of the same table (for example “My orders”, “Pending approvals”, “Last 30 days”) without rebuilding the logic each time.

Example use cases

  • Admin review queue: restrict by role and filter for a specific status (e.g., pending)
  • My items (per user): securely retrieve data belonging to the user signed in
  • Recent activity: get all records that were created in the last 30 days, sorted by the most recent first

Creating a view

Views are created on top of a table.

To create a view:

  1. Go to Database & APIsTables.
  2. Select the table you want to create a view for.
  3. At the top of the table, click New view.
  4. (Optional) Rename the view by clicking its name.

WeWeb will create your new view and open it so you can start setting up Filters, Sort, and Parameters.

CREATING TABLES

Having a table is a prerequisite to creating views. If you are unsure what a table is or how to create one, you can learn more in the tables documentation→

Configuring a view

Once you have created a view, you are able to customise exactly how that view is filtered and sorted.

Filters

To configure filters, click Filter above the table to open the filter modal:

From here, you can add one or more rules:

  1. Choose the column you want to filter on.
  2. Choose the condition (for example “Is”, “Contains”, “Is after”, “Is empty”).
  3. Choose the value for the rule.
    • You can type a fixed value, or bind it to a view Parameter to make it dynamic.

DYNAMIC FILTERS

The ability to make filters dynamic is what makes them truly powerful.

To make a filter dynamic, you need to utilize Parameters

Learn more about Parameters →

You also are able to apply more advanced filters, such as

  • Combining multiple conditions with And/Or logic

    Example: status is active And createdAt is after 1 Nov 2025

  • Grouping related rules with Add condition group

    Example: Group “Text search” with name Contains search Or description Contains search, then at the root add And status is active

  • Nesting groups (e.g., an And group inside an Or group) for complex logic

    Example: (status is active And (type is Pro Or type is Enterprise))

  • Toggling a filter to only be applied if there is a valid value

    Example: Bind the value to the search parameter and set the rule to “apply only if value exists”; when search is empty the rule is skipped

Date and time filters

If your table has date or date/time columns, the filter modal includes conditions designed for dates (for example “Is before”, “Is after”, “Is between”, and relative options like “Last 7 days” when available).

Use these for “Recent activity” style views.

Filtering using relationships (linked tables)

If your table has relationship columns (linked rows), you can filter based on fields inside the linked table.

For example, in an Orders view you might filter on the linked Customer record’s email.

Typical flow:

  1. In the filter modal, choose the relationship column (for example Customer).
  2. Choose a field from the linked table (for example email).
  3. Pick a condition and value (for example “Contains” → @weweb.io).

If your filter UI shows a scope selector, you can also “enter” a relationship scope first, then add filters inside that linked table scope.

Sorting

To configure sorting, click the Sort button above the table to open the sort modal:

From here, you can define how rows should be ordered by:

  1. Selecting the column you want to sort by
  2. Choose the order with the direction control (Asc or Desc)

You can then apply however many additional sorts you like by pressing Add sort:

Parameters

Parameters allow you to pass dynamic values into your views, allowing you to then pass these values onto your filters and sorting to make them truly dynamic.

To create parameters, click the Parameters button above the table.

To add a parameter:

  1. Click Add parameter
  2. Enter the Parameter name
  3. Choose a Parameter type: Text, Number, or Boolean
  4. (Optional) Set a Default value formula
  5. Click Save

Using Parameters

To use a parameter in filters and sorting:

  1. Bind the value used for a filter or sort
  1. Set it to use the newly created parameter

[INSET IMAGE OF PARAMETER IN BINDING WINDOW]

Now, whenever you use the Fetch table view action in a workflow from the interface, you will be able to define what you wish to pass in for the values of the view's parameters.

Practical examples:

  • Text search: create parameter search (Text), then filter: name Contains search or description Contains search
  • Price filter: set parameter minPrice (Number), then filter: price greater than minPrice

[CREATE VIDEO GUIDE ON THESE EXAMPLES ^]

Securing your views

When you are creating a view, it is crucial that you ensure your users are only able to retrieve data that they are allowed to retrieve.

For example, an admin should be able to see all records, and a user should only be able to see records that belong to them.

There are multiple ways to secure your views depending on your requirements:

Securing based on authentication

If you wish to restrict access to a view simply depending on whether or not somone is signed in, then you can use the Access select.

Here you can easily restrict access to a view to only authenticated users (AKA users who are signed in)

Securing based on a specific role

[NEEDS ACCESS CHECK CONTENT]

Securing data to a specific user

To make it so that a user is only able to retrieve data that belongs to them, you need to:

  1. Create a column of type User
  1. Link the appropriate records to their given user
  1. Set up a filter to get record linked to the current

This ensures the view only returns records that are linked to the user retrieving the data.

Relationships (linked rows)

Relationship columns let a view “reach into” linked tables. This is useful for:

  • Filtering by fields on a linked record.
  • Showing extra fields from the linked record (not just its ID).

Showing fields from a linked record (Columns panel)

In the view columns panel, relationship sections are typically grouped as:

  • References (Links from your table to another table)
  • Referenced by (Tables that link back to your table)

To include data from a linked record, open the Columns panel and turn on the relationship using the toggle next to its name. Once it’s enabled, the relationship expands and shows a Columns section where you can pick which fields from the linked table should be included in the view results (or select all).

Next to an enabled relationship, you’ll also see a gear icon. This opens the relationship Settings, where you can:

  • Set a Display name (alias) to rename the relationship in this view.
  • Choose a Join type:
    • Left: Keeps rows even when the linked record is empty.
    • Inner: Removes rows where the linked record is empty.

Nested relationships

You can configure relationships multiple levels deep (for example Order → Customer → Company) and apply filters to fields at each level.

Using a view in the interface

The flow of using a view in the interface is as follows:

  1. In a workflow, use a Fetch table view action to get the data of your desired view. If you have any parameters set up, you will be able to define what should be passed to those parameters.
  1. When the Fetch table view action has ran, you will then be able to access the data of the view from the binding menu.
  1. With the data of the view now available, you can use it in the interface. Meaning, you could bind it to a repeating list of items to display the data.

Continue learning

Once you have your tables created and are using views to appropriately display the data, the next core step will likely be setting up secure logic using backend workflows.

Learn more about backend workflows (API Endpoints) →