title: Expression --- summary: Represents filter expressions for the query system. --- module: lektor.db --- type: class --- body: Expressions are used to filter down [Query :ref](../query/) objects. They can be passed to the [filter :ref](../query/filter/) function in particular. The most basic expression is created by accessing the [F :ref](../f/) object which will return an expression that points to a field. Further manipulation of it can create more expressive expressions. `F.name` literally just means that a field by that name exists and is set to a value. The query syntax is mostly the same in Python as well as in the Jinja 2 templates, the main difference are [and :ref](../and/) and [or :ref](../or/). ## Example ```pycon >>> p.children.filter((F.name == 'foo') | (F.name == 'bar')).all() [, ] ```