Este guia ajuda você a resolver problemas com erros do Liquid na sua LookML.
Árvore de depuração
Use a árvore de decisão a seguir para resolver problemas comuns do Liquid:
As seções a seguir descrevem os cenários na árvore em mais detalhes.
Erro: variável não encontrada
Verifique se o campo está acessível na Análise
Esse erro pode aparecer se você estiver fazendo referência a um campo que não está acessível na análise detalhada.
Primeiro, verifique se há erros de digitação no nome do campo. Em seguida, verifique se a visualização em que o campo está definido foi unida à análise detalhada.
Erro: exceção de análise do Liquid
Esse erro pode aparecer ao validar o LookML no IDE ou ao executar uma consulta. As seções a seguir descrevem as causas comuns desse erro.
Feche as aspas simples ou duplas
Verifique se há aspas simples ou duplas abertas, mas não fechadas. Por exemplo, o código a seguir geraria um erro:
{% if value == "Shirt %}
This is a shirt.
{% endif %}
Para resolver o erro, feche as aspas.
{% if value == "Shirt" %}
This is a shirt.
{% endif %}
Use == para comparação
Não use um único sinal de igual (=) ao verificar se um valor é igual a outro. O seguinte código geraria um erro:
{% if value = "Shirt" %}
This is a shirt.
{% endif %}
Para resolver o erro, use dois ==.
{% if value == "Shirt" %}
This is a shirt.
{% endif %}
Use a sintaxe de tag correta
Não use sintaxe de saída em uma instrução if
nem sintaxe de tag em um único valor. O seguinte código geraria um erro:
{{ if value == "Shirt" }}
This is a {% value %}.
{{ endif }}
Em vez disso, use a sintaxe de saída para inserir valores individuais e a sintaxe de tag para realizar comparações e operações lógicas.
{% if value == "Shirt" %}
This is a {{ value }}.
{% endif %}
Não aninhe tags Liquid
Não use tags Liquid dentro de outras tags Liquid. Por exemplo, o código a seguir geraria um erro:
{% if value > {{ view_name.field_name._value }} %}
This value is larger.
{% endif %}
Para resolver o erro, remova as tags aninhadas:
{% if value > view_name.field_name._value %}
This value is larger.
{% endif %}
O Liquid está mostrando o valor incorreto
Nesses casos, a LookML geralmente é validada sem erros, mas você vai encontrar resultados inesperados ao executar uma consulta em uma análise detalhada.
Colocar em maiúscula os valores "yesno"
Se você estiver usando o Liquid para verificar o valor de um campo yesno
, procure valores sem letras maiúsculas. O código a seguir não corresponderia a nenhum resultado para a condição yes
:
{% if value == "yes" %}
This is a shirt or shoes.
{% endif %};;
Em vez disso, coloque em maiúsculo os valores "Sim" e "Não".
{% if value == "Yes" %}
This is a shirt or shoes.
{% endif %};;
Verificar se o parâmetro Liquid é compatível
Se você fizer referência a um parâmetro do Liquid em um parâmetro da LookML que não é compatível com ele, o Looker vai ignorar o parâmetro do Liquid.
Por exemplo, o código a seguir não retornaria nada, já que a sintaxe parameter parameter_name
não é compatível com o parâmetro html
do LookML.
html: {% parameter parameter_name %};;
Consulte a referência de variáveis Liquid para saber quais parâmetros Liquid são compatíveis com quais parâmetros LookML. Para este exemplo, você pode reescrever o código da seguinte maneira:
html: {{ parameter_name._parameter_value }};;