Operators
An operator is a statement that evaluates some code, and makes a decision about what to do next. Operators can be used for comparing two values, inspecting a single value, or evaluating whether or not some code returns true
.
For further discussion on how Liquid treats values, see their documentation: Truthiness and falsiness in Liquid.
Comparison operators
If b = 6
, the table below illustrates the comparison operators and the way they interact with b
:
Operator
Description
Example
Result
==
equal to
b == 6
true
!=
not equal
b != 6
false
>
greater than
b > 5
true
<
less than
b < 6
false
>=
greater than or equal to
b >= 6
true
<=
less than or equal to
b <= 6
true
Examples
Testing for blank, empty
Liquid supports equality/inequality testing a value against blank
or empty
. In this way, Liquid allows the author to ask, "is this value blank?", or "is this value empty?"
Blank
Quoting from the Rails API:
An object is blank if it's false, empty, or a whitespace string. For example,
nil
, '', ' ', [], {}, andfalse
are all blank.
Empty
An array, hash, or string can be tested for emptiness. An array is empty if it has no elements; a hash is empty if it has no key-value pairs; a string is empty if its length is zero.
A string that only contains whitespace is not empty, but it is blank!
Contains operator
The contains
operator is used to check for the existence of a substring in a string, or for a specific element in an array.
Substring containment
Array element containment
Logical operators
Liquid has two logical operators: and
and or
.
If b = 3
and c = 6
, the table below illustrates the logical operators in Liquid, and the way they interact with b
and b
:
Operator
Example
Result
and
b < 2 and c < 6
false
or
b < 2 or c < 6
true
Check if both the shipping address and billing are blank
Check if tag equals blank or a customer's tags contains a certain tag
Last updated