Localizzazione del modello LookML

La localizzazione dei modelli spesso si verifica insieme alla localizzazione dei formati numerici e alla selezione della lingua dell'interfaccia utente. Per ulteriori informazioni su questi argomenti, consulta le pagine della documentazione Formattazione dei numeri di localizzazione e Lingue dell'interfaccia utente supportate.

Con la localizzazione dei modelli, puoi personalizzare la modalità di visualizzazione di etichette e descrizioni del modello in base alle impostazioni locali dell'utente.

La localizzazione non deve essere basata sulla posizione geografica o sulla lingua. Puoi utilizzare le impostazioni internazionali per rappresentare altri fattori distintivi, ad esempio utenti interni o esterni oppure gestori o singoli collaboratori, nonché personalizzare le etichette e le descrizioni di conseguenza.

La localizzazione del modello non è attualmente compatibile con l'importazione di progetti.

In questa pagina vengono descritti i passaggi per localizzare il progetto:

Per ulteriori informazioni sulla localizzazione dell'interfaccia utente di Looker o sulla localizzazione della formattazione dei numeri, consulta le pagine della documentazione sulle lingue di interfaccia utente supportate e sulla localizzazione dei numeri.

Utilizzare elementi localizzati nei file modello

Puoi localizzare etichette, etichette di gruppo e descrizioni nel modello, tra cui:

La localizzazione non è supportata per dimension_group. Utilizza invece group_label e group_item_label per creare il tuo insieme di dimensioni che possono essere localizzate.

Puoi anche creare dashboard LookML localizzate nel tuo progetto. I seguenti parametri della dashboard di LookML possono essere localizzati:

Per visualizzare tutti i campi del progetto che possono essere localizzati, puoi impostare il livello di localizzazione del progetto su strict. Con questa impostazione, l'IDE di Looker restituisce un errore di convalida LookML per tutti gli elementi LookML che possono essere localizzati, ma privi di etichette, e per qualsiasi stringa del tuo modello LookML che può essere localizzata, ma che non sono definiti nei tuoi file di stringhe locali.

Ecco un esempio di file di visualizzazione con alcune etichette e descrizioni:

view: flights {
  label: "flight_info"
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }

  dimension: air_carrier {
    label: "airline"
    type: string
    sql: ${TABLE}.air_carrier ;;
  }

  dimension: country {
    label: "country"
    description: "country_of_departure"
    type: string
    map_layer_name: countries
    sql: ${TABLE}.country ;;
  }

  dimension: number_of_engines {
    label: "number_of_engines"
    type: string
    sql: ${TABLE}.number_of_engines ;;
  }

  dimension: location {
    type: string
    sql: ${TABLE}.location ;;
  }

Localizziamo questi valori nei file di stringhe utilizzando un livello di localizzazione permissive. Nota che la dimensione location non ha un'etichetta, pertanto possiamo dimostrare come viene visualizzata una dimensione senza localizzazione.

Creazione di file di stringhe di impostazioni internazionali

I file di stringhe locali utilizzano coppie chiave-valore per definire la modalità di visualizzazione di etichette e descrizioni nel modello per ciascuna lingua. Sul lato sinistro di ogni coppia chiave-valore, si trova la chiave di localizzazione, che è un'etichetta o una stringa descrittiva del tuo modello. Sul lato destro della coppia chiave-valore puoi definire la modalità di visualizzazione della stringa nell'interfaccia utente di Looker.

Per ogni lingua desiderata per il progetto, crea un file di stringhe dedicato. Dovresti creare un solo file di stringhe per ogni lingua nel progetto. Deve essere presente un file stringa il cui nome corrisponda alle impostazioni internazionali predefinite. Ad esempio, se hai specificato default_locale: en nel file manifest del progetto, devi avere un file denominato en.strings.json. Ogni stringa deve essere definita nel file di stringhe locali predefinito, altrimenti non verrà localizzata.

La localizzazione dei modelli non deve essere basata sulla posizione geografica o sulla lingua. Tuttavia, se utilizzi la localizzazione dei modelli e vuoi utilizzare anche la dashboard localizzata e l'interfaccia utente di visualizzazione nativi di Looker, devi abbinare il titolo del file di stringhe ai codici lingua supportati di Looker.

Ecco un file en.strings.json di esempio che verrà utilizzato per tutti gli utenti con valore Locale pari a en. In questo esempio, en è specificato anche come lingua predefinita, quindi tutte le stringhe devono essere definite in questo file per poter essere localizzate.

{
  "flight_info": "Flights",
  "id": "Identifier",
  "airline": "Air Carrier",
  "country_of_departure": "Country of Departure",
  "number_engines": "Number of Engines"
}

Ecco cosa vedrebbe un utente en in Looker:

Tieni presente quanto segue:

  • Nel file di vista sopra non abbiamo fornito alcuna etichetta per la dimensione location, pertanto Looker visualizza il nome della dimensione, maiuscola: "quoit;Location".
  • Non abbiamo definito la localizzazione dell'etichetta"paese"nel nostro file en.strings.json, pertanto Looker visualizza l'etichetta così come è definita nel file di visualizzazione, senza doverla utilizzare come "paese".

Come altro esempio, possiamo creare un file es_ES.strings.json, che viene utilizzato per tutti gli utenti con un valore Locale pari a es_ES:

{
  "flight_info": "Vuelos",
  "id": "Identificador",
  "airline": "Aerolínea",
  "country": "País",
  "country_of_departure": "País de Partida",
  "number_engines": "Número de Motores"
}

Ecco cosa vedrebbe un utente es_ES in Looker:

Tieni presente quanto segue:

  • Come nell'esempio precedente, nel file di vista sopra non abbiamo fornito alcuna etichetta per la dimensione location, quindi Looker visualizza il nome della dimensione, maiuscola: "Location".
  • Non abbiamo definito la localizzazione dell'etichetta "paese" nel nostro file en.strings.json, che è il file delle stringhe locali predefinito. Quindi, anche se abbiamo definito "paese"; nel nostro file es_ES.strings.json, Looker non localizza questa stringa e visualizza l'etichetta come viene definita nel nostro file di visualizzazione: "paese".

Aggiunta delle impostazioni di localizzazione al file manifest del progetto

Per attivare la localizzazione per il tuo progetto, aggiungi il parametro localization_settings al file manifest del progetto.

Se il tuo progetto non ha già un file manifest, puoi crearne uno dall'icona + nella parte superiore del browser di file nell'IDE di Looker.

Nel file manifest, aggiungi le tue impostazioni di localizzazione. Ecco un esempio:

localization_settings: {
  default_locale: en
  localization_level: permissive
}

default_locale

Il parametro default_locale specifica il nome del file delle stringhe di impostazioni internazionali predefinito nel progetto.

Il file di stringhe locali predefinito determina quali stringhe del tuo modello sono localizzate. Anche se un'etichetta o una stringa di descrizione è definita in un altro file di stringhe di impostazioni internazionali, se non è definita nel file di stringhe di impostazioni internazionali default, l'interfaccia utente di Looker mostrerà la stringa non localizzata. Consulta questa sezione sopra per ulteriori informazioni sulla configurazione dei file delle stringhe di lingua.

Le impostazioni internazionali predefinite per il tuo progetto non devono essere confuse con quelle per gli utenti di Looker. L'amministratore di Looker può impostare le impostazioni internazionali predefinite per la tua istanza. Se non viene configurata alcuna impostazione predefinita, Looker avrà l'impostazione predefinita en. Se l'amministratore non inserisce un valore Locale specifico per un utente o un gruppo di utenti a cui appartiene, Looker assegna l'utente alle impostazioni internazionali dell'istanza. Inoltre, se l'amministratore non ha impostato impostazioni internazionali predefinite per l'istanza, Looker assegna l'utente alle impostazioni internazionali en.

Per questo motivo, a meno che tu non abbia la certezza che l'amministratore di Looker imposterà il valore Locale per tutti gli utenti di Looker, devi impostare il parametro default_locale del progetto sulla lingua predefinita per la tua istanza (o su en se non è stato impostato alcun valore predefinito) e definire la localizzazione di tutte le tue etichette e descrizioni nel file .strings.json per quella lingua.

localization_level

Il livello di localizzazione del progetto specifica se gli elementi non localizzati sono consentiti nel modello:

  • Imposta il livello di localizzazione su strict per richiedere etichette localizzate per tutti i modelli, le esplorazioni, le viste e i campi del progetto. L'IDE di Looker restituirà un errore di convalida LookML per tutti gli elementi privi di etichette e per le etichette e le descrizioni non definite nel file delle stringhe locali predefinito.
  • Imposta il livello di localizzazione su permissive per consentire gli elementi privi di etichetta e per consentire etichette e descrizioni non definite nel file di stringhe di localizzazione predefinito.

Anche se vuoi il livello di localizzazione di strict, può essere utile impostare il livello di localizzazione del progetto su permissive quando stai sviluppando il progetto per evitare errori di convalida. Dopo aver localizzato tutte le etichette e le descrizioni, puoi impostare il livello di localizzazione su strict per vedere eventuali errori.

Assegnazione di utenti a un'area geografica

Dopo avere configurato i file delle stringhe locali, puoi assegnare gli utenti a una lingua che corrisponde a uno dei file di tali impostazioni. Puoi eseguire questa operazione a livello di istanza, gruppo di utenti o singolo utente, utilizzando il campo Locale o l'attributo utente locale.

Ad esempio, se vuoi che un utente veda le etichette e le descrizioni definite nel file es_ES.strings.json, l'amministratore di Looker deve configurare l'impostazione Locale dell'utente su es_ES:

Le impostazioni internazionali personalizzate create con i file di stringhe possono essere inserite nel campo Impostazioni internazionali facendo clic sul campo e digitando il nome file della stringa, anziché selezionare un'impostazione internazionale integrata dal menu a discesa. Per ulteriori informazioni, consulta la pagina della documentazione Utenti.

Quando un'impostazione internazionale non è impostata per gli utenti a livello di singolo utente o di gruppo di utenti, Looker assegna gli utenti all'istanza di istanza. Tuttavia, se non è configurato alcun file .strings per le impostazioni internazionali dell'istanza, la localizzazione dei modelli non funzionerà per questi utenti. Per questo motivo, è necessario configurare un file .strings per ogni lingua predefinita di ogni istanza. Per saperne di più, consulta le sezioni default_locale o Creazione di file di stringhe locali.

Impostazione delle impostazioni internazionali per gli utenti di incorporamento SSO

Puoi includere il valore locale di un utente in un URL di incorporamento SSO come qualsiasi altro attributo utente. Il formato esatto richiesto per gli incorporamenti SSO dipende dal linguaggio di programmazione utilizzato per creare lo script dell'URL di incorporamento SSO, ma il nome dell'attributo utente è locale. Per ulteriori informazioni sugli URL di incorporamento SSO e sugli strumenti per creare l'URL di incorporamento SSO, consulta la pagina Incorporamento Single Sign-On (SSO).

Utilizzo delle impostazioni internazionali nelle variabili Liquid

Come descritto sopra, la localizzazione dei modelli consente di personalizzare la visualizzazione delle etichette e delle descrizioni del modello per le diverse impostazioni internazionali. Tuttavia, puoi anche includere chiavi di localizzazione nelle variabili Liquid, che ti consentono di localizzare i valori dei dati.

Ad esempio, nel nostro file di stringhe locali predefinito denominato en.strings.json, possiamo creare le chiavi di localizzazione domestic e international con le seguenti voci:

{
  "domestic": "Domestic",
  "international": "International"
}

Nel nostro file es_ES.strings.json, possiamo fornire la versione spagnola di queste chiavi di localizzazione:

{
  "domestic": "Nacional",
  "international": "Internacional"
}

Da qui, possiamo utilizzare le chiavi di localizzazione domestic e international nelle variabili Liquid per localizzare l'output di una dimensione:

dimension: from_US {
    label: "from_us"
    type: string
    sql: CASE
         WHEN ${TABLE}.country = 'United States' THEN '{{ _localization['domestic'] }}'
         ELSE '{{ _localization['international'] }}'
         END;;
  }

Ecco cosa vedono gli utenti con le impostazioni internazionali di en:

Ecco invece cosa vedono gli utenti con l'area geografica es_ES:

Puoi utilizzare Liquid anche nei filtri delle dashboard e degli elementi delle dashboard per localizzare il valore predefinito in un filtro. Ad esempio, se una dashboard LookML ha un riquadro della sezione Esplora di cui sopra e c'è un filtro su quel riquadro definito in questo modo:

filters:
  flights.from_US: "{{ _localization['domestic'] }}"

Ecco cosa vedranno gli utenti con le impostazioni internazionali di en quando esplorano quel riquadro della dashboard:

Ecco cosa vedono gli utenti con le impostazioni internazionali di es_ES quando esplorano quel riquadro sulla dashboard:

Comprendere come si applicano le regole di localizzazione agli oggetti estesi e raffinati

Ricorda che le regole di localizzazione si applicano quando estendi le viste, le esplorazioni o le dashboard LookML e quando perfeziona le visualizzazioni o le esplorazioni.

Se hai esteso o perfezionato un oggetto e poi hai aggiunto nuove etichette o descrizioni, devi fornire le definizioni di localizzazione nei file di stringhe locali.

Ad esempio, se abbiamo una vista flights:


view: flights {
  label: "flight_info"
  sql_table_name: flightstats.accidents ;;
  ...
}

Poi creiamo una nuova vista che estende la vista flights:

include: "/views/flights.view"

view: flights_enhanced {
  extends: [flights]
  label: "enhanced_flight_info"
}

Nei nostri file di stringhe locali dobbiamo definire entrambe le stringhe delle etichette delle viste ("flight_info" e "enhanced_flight_info"). Se il livello di localizzazione del progetto è impostato su strict, non potremmo eseguire il commit degli aggiornamenti finché non avremo definito le nuove etichette o descrizioni.