トゥルーシーとファルシー
ブール型でない データ型 がブールコンテキストで使用されると(条件付きタグなど)、Liquid はそれを true
または false
として評価する必要があるかどうかを判断します。デフォルトで true
を返すデータ型をトゥルーシーと呼びます。デフォルトで false を返すデータ型をファルシーと呼びます。
トゥルーシー
Liquid のすべての値は、nil
と false
を除きトゥルーシーです。
以下の例では、「Tobi」というテキストはブール型ではありませんが、条件内でトゥルーシーになります。
{% assign name = "Tobi" %}
{% if name %}
This text will always appear since "name" is defined.
{% endif %}
文字列 は、空であったとしてもトゥルーシーです。以下の例では、page.category
が存在するものの空の場合は空の HTML タグが生成されます。
入力
{% if page.category %}
<h1>{{ page.category }}</h1>
{% endif %}
出力
<h1></h1>
ファルシー
Liquid でファルシーなのは、nil
と false
のみです。
まとめ
以下の表は、Liquid でトゥルーシーまたはファルシーとなっている項目をまとめたものです。
トゥルーシー | ファルシー | |
---|---|---|
true | • | |
false | • | |
nil | • | |
文字列 | • | |
空の文字列 | • | |
0 | • | |
整数 | • | |
浮動小数点数 | • | |
配列 | • | |
空の配列 | • | |
ページ | • | |
EmptyDrop | • |