Questa guida ti aiuta a risolvere i problemi relativi agli errori di Liquid in LookML.
Albero di debug
Utilizza la seguente struttura decisionale per risolvere i problemi comuni di Liquid:
Le sezioni seguenti descrivono in modo più dettagliato gli scenari nell'albero.
Errore: variabile non trovata
Verifica che il campo sia accessibile in Esplora
Questo errore può essere visualizzato se fai riferimento a un campo non accessibile in Esplora.
Innanzitutto, controlla che non ci siano errori di battitura nel nome del campo. Poi, controlla che la visualizzazione in cui è definito il campo sia unita all'esplorazione.
Errore: eccezione di analisi di Liquid
Questo errore può essere visualizzato durante la convalida di LookML nell'IDE o durante l'esecuzione di una query. Le sezioni seguenti descrivono le cause comuni di questo errore.
Chiudi le virgolette singole o doppie
Verifica la presenza di virgolette singole o doppie aperte ma non chiuse. Ad esempio, il seguente codice genererebbe un errore:
{% if value == "Shirt %}
This is a shirt.
{% endif %}
Per risolvere l'errore, chiudi le virgolette.
{% if value == "Shirt" %}
This is a shirt.
{% endif %}
Utilizza == per il confronto
Non utilizzare un singolo segno = quando controlli se un valore è uguale a un altro valore. Il seguente codice genererebbe un errore:
{% if value = "Shirt" %}
This is a shirt.
{% endif %}
Per risolvere l'errore, utilizza due simboli ==.
{% if value == "Shirt" %}
This is a shirt.
{% endif %}
Utilizzare la sintassi corretta dei tag
Non utilizzare la sintassi di output intorno a un'istruzione if o la sintassi dei tag intorno a un singolo valore. Il seguente codice genererebbe un errore:
{{ if value == "Shirt" }}
This is a {% value %}.
{{ endif }}
Anziché generare la sintassi per inserire singoli valori, utilizza la sintassi dei tag per eseguire confronti e operazioni logiche.
{% if value == "Shirt" %}
This is a {{ value }}.
{% endif %}
Non nidificare i tag Liquid
Non utilizzare tag Liquid all'interno di altri tag Liquid. Ad esempio, il seguente codice genererebbe un errore:
{% if value > {{ view_name.field_name._value }} %}
This value is larger.
{% endif %}
Per risolvere l'errore, rimuovi i tag nidificati:
{% if value > view_name.field_name._value %}
This value is larger.
{% endif %}
Il liquido mostra il valore errato
In questi casi, in genere la convalida di LookML non genera errori, ma quando esegui una query in un'esplorazione, visualizzi risultati imprevisti.
Capitalizzare i valori yesno
Se utilizzi Liquid per controllare il valore di un campo yesno, verifica che non siano presenti valori senza maiuscole. Il seguente codice non corrisponde ad alcun risultato per la condizione yes:
{% if value == "yes" %}
This is a shirt or shoes.
{% endif %};;
Scrivi invece "Yes" e "No" con la prima lettera maiuscola.
{% if value == "Yes" %}
This is a shirt or shoes.
{% endif %};;
Controllare se il parametro Liquid è supportato
Se fai riferimento a un parametro Liquid in un parametro LookML che non lo supporta, Looker lo ignorerà.
Ad esempio, il seguente codice non restituirebbe nulla, poiché la sintassi parameter parameter_name non è supportata per il parametro LookML html.
html: {% parameter parameter_name %};;
Consulta il riferimento alle variabili Liquid per vedere quali parametri Liquid sono supportati in quali parametri LookML. Per questo esempio, puoi riscrivere il codice nel seguente modo:
html: {{ parameter_name._parameter_value }};;