Localisation du modèle LookML

Un modèle est généralement localisé lors de la localisation du format numérique et du choix de la langue de l'interface utilisateur. Pour en savoir plus à ce sujet, consultez les pages de documentation sur la localisation des formats numériques et les langues compatibles avec l'interface utilisateur.

La localisation de modèles vous permet de personnaliser l'affichage des libellés et des descriptions de vos modèles en fonction des paramètres régionaux de l'utilisateur.

La localisation ne doit pas nécessairement être basée sur l'emplacement géographique ou la langue. Vous pouvez en effet utiliser des paramètres régionaux pour représenter d'autres facteurs distinctifs — utilisateurs internes et externes, responsables et collaborateurs individuels, etc. — et personnaliser les libellés et descriptions en conséquence.

La localisation de modèles n'est actuellement pas compatible avec l'importation de projets.

Cette page décrit la procédure de localisation d'un projet :

Pour en savoir plus sur la localisation de l'interface utilisateur de Looker ou de la mise en forme des nombres, consultez les pages de documentation sur les langues d'interface utilisateur compatibles et la localisation des nombres.

Utilisation d'éléments localisés dans des fichiers de modèle

Vous pouvez localiser les libellés, libellés de groupe et descriptions d'un modèle, notamment :

La localisation n'est pas compatible avec dimension_group. Utilisez plutôt group_label et group_item_label pour créer votre propre ensemble de dimensions pouvant être localisées.

Vous pouvez également créer des tableaux de bord LookML localisés dans votre projet. Les paramètres suivants du tableau de bord LookML peuvent être localisés :

Pour afficher tous les champs de votre projet qui peuvent être localisés, vous pouvez définir son niveau de localisation sur strict. Avec ce paramètre, l'IDE Looker renvoie une erreur de validation LookML pour tous les éléments LookML qui peuvent être localisés, mais qui n'ont pas de libellés, et pour toutes les chaînes de votre modèle LookML qui peuvent être localisées, mais qui ne sont pas définies dans vos fichiers de chaînes régionaux.

Voici un exemple de fichier de vue contenant quelques libellés et descriptions :

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 ;;
  }

Nous localisons ces valeurs dans les fichiers de chaînes en utilisant un niveau de localisation permissive. Notez que la dimension location n'a pas de libellé. Nous pouvons donc montrer comment afficher une dimension sans localisation.

Création de fichiers de chaînes de paramètres régionaux

Les fichiers de chaînes de paramètres régionaux utilisent des paires clé-valeur pour définir l'affichage des libellés et descriptions d'un modèle pour chaque groupe de paramètres régionaux. À gauche de chaque paire clé-valeur se trouve la clé de localisation, qui est une étiquette ou une chaîne de description de votre modèle. C'est à droite de la paire clé-valeur que vous définissez la valeur affichée pour cette chaîne dans l'interface utilisateur Looker.

Pour chaque groupe de paramètres régionaux souhaité pour le projet, créez un fichier de chaînes dédié. Vous devriez créer uniquement un fichier de chaînes pour chaque paramètre régional dans votre projet. Un fichier de chaînes doit être nommé pour correspondre aux paramètres régionaux par défaut. Par exemple, si vous avez spécifié default_locale: en dans le fichier manifeste de votre projet, celui-ci doit contenir un fichier nommé en.strings.json. Chaque chaîne doit être définie dans le fichier de chaînes de paramètres régionaux par défaut, sinon elle ne sera pas localisée.

La localisation d'un modèle ne doit pas nécessairement être basée sur l'emplacement géographique ou la langue. Toutefois, si vous utilisez la localisation de modèle et que vous souhaitez également utiliser l'interface utilisateur de visualisation et de tableau de bord localisé de façon native, vous devez faire correspondre le titre du fichier de chaînes avec les codes régionaux compatibles avec Looker.

Voici un exemple de fichier en.strings.json qui sera utilisé pour tous les utilisateurs avec la valeur Locale de en. Dans cet exemple, en est également spécifié comme paramètre par défaut. Toutes les chaînes doivent donc être définies dans ce fichier pour être localisées.

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

Voici ce qu'un utilisateur en voit dans Looker:

Veuillez noter les points suivants :

  • Dans le fichier de vue ci-dessus, nous n'avons pas fourni d'étiquette pour la dimension location. Looker affiche donc le nom de la dimension, en majuscules: &location.
  • Nous n'avons pas défini la localisation du libellé "country" dans notre fichier en.strings.json. Looker affiche donc le libellé tel qu'il est défini dans notre fichier de vue, sans le mettre en majuscules : "country".

Autre exemple, nous pouvons créer un fichier es_ES.strings.json utilisé pour tous les utilisateurs ayant une valeur Locale de 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"
}

Voici ce qu'un utilisateur es_ES voit dans Looker:

Veuillez noter les points suivants :

  • Comme dans l'exemple précédent, dans le fichier de vue ci-dessus, nous n'avons pas fourni d'étiquette pour la dimension location. Looker affiche donc le nom de la dimension, en majuscules: &location.
  • Nous n'avons pas défini la localisation du libellé "pays" dans le fichier en.strings.json, qui est le fichier de chaînes de paramètres régionaux par défaut. Ainsi, même si nous avons défini le pays dans notre fichier es_ES.strings.json, Looker ne localise pas cette chaîne et affiche le libellé tel qu'il est défini dans le fichier de vue : country.

Ajouter des paramètres de localisation au fichier manifeste de votre projet

Pour activer la localisation de votre projet, ajoutez le paramètre localization_settings au fichier manifeste de votre projet.

Si votre projet ne comporte pas encore de fichier manifeste, vous pouvez en créer un à l'aide de l'icône + située en haut de l'explorateur de fichiers dans l'IDE Looker.

Ajoutez vos paramètres de localisation dans le fichier manifeste. Exemple :

localization_settings: {
  default_locale: en
  localization_level: permissive
}

default_locale

Le paramètre default_locale spécifie le nom du fichier de chaînes de paramètres régionaux par défaut dans votre projet.

Ce fichier détermine les chaînes du modèle à localiser. Même si une chaîne de libellé ou de description est définie dans un autre fichier de chaînes de paramètres régionaux, si elle n'est pas définie dans le fichier de chaînes de paramètres régionaux default, l'interface utilisateur de Looker affichera la chaîne non localisée. Consultez la section ci-dessus pour en savoir plus sur la configuration des fichiers de chaînes de paramètres régionaux.

Les paramètres régionaux par défaut de votre projet ne doivent pas être confondus avec les paramètres régionaux par défaut pour les utilisateurs de Looker. Votre administrateur Looker peut définir des paramètres régionaux par défaut pour votre instance. Si aucune valeur par défaut n'est définie, Looker utilise par défaut en. Si votre administrateur n'indique pas de valeur Locale pour un utilisateur ou un groupe d'utilisateurs auquel appartient l'utilisateur, Looker attribue l'utilisateur aux paramètres régionaux par défaut de l'instance. Si l'administrateur n'a pas défini de paramètres régionaux d'instance par défaut, Looker attribue l'utilisateur aux paramètres régionaux en.

Pour cette raison, sauf si vous êtes certain que votre administrateur Looker définira la valeur Locale pour tous vos utilisateurs Looker, vous devez définir le paramètre default_locale de votre projet sur les paramètres régionaux par défaut de votre instance (ou sur en si aucun paramètre par défaut n'a été défini), et définir la localisation de tous vos libellés et descriptions dans le fichier .strings.json pour ces paramètres régionaux.

localization_level

Le niveau de localisation de votre projet détermine si les éléments non localisés sont autorisés ou non dans votre modèle :

  • Définissez le niveau de localisation sur strict pour exiger des libellés localisés pour tous les modèles, explorations, vues et champs de votre projet. L'IDE Looker affichera une erreur de validation LookML pour tous ces éléments qui ne possèdent pas de libellés, ainsi que pour les libellés et descriptions qui ne sont pas définis dans le fichier de chaînes de paramètres régionaux par défaut.
  • Définissez le niveau de localisation sur permissive pour autoriser les éléments sans libellés, ainsi que pour les libellés et les descriptions qui ne sont pas définis dans le fichier de chaînes de localisation par défaut.

Même si vous souhaitez bénéficier du niveau de localisation"strict", il peut être utile de définir le niveau de localisation de votre projet sur"permissive"lorsque vous le développez pour éviter les erreurs de validation. Une fois que vous avez fini de localiser tous vos libellés et descriptions, vous pouvez définir le niveau de localisation sur strict pour afficher les erreurs.

Attribution d'utilisateurs à des paramètres régionaux

Une fois les fichiers de chaînes de paramètres régionaux définis, vous pouvez attribuer des utilisateurs à des paramètres régionaux correspondant à l'un de ces fichiers. Vous pouvez effectuer cette opération au niveau de l'instance, du groupe d'utilisateurs ou de l'utilisateur individuel, à l'aide du champ Paramètres régionaux ou de l'attribut utilisateur locale.

Par exemple, si vous souhaitez qu'un utilisateur voie les libellés et les descriptions définis dans le fichier es_ES.strings.json, votre administrateur Looker doit définir le paramètre Paramètres régionaux de l'utilisateur sur es_ES:

Les paramètres régionaux personnalisés que vous créez avec des fichiers de chaîne peuvent être saisis dans le champ Locale (Paramètres régionaux) en cliquant sur le champ et en saisissant le nom de fichier de la chaîne au lieu de sélectionner des paramètres régionaux intégrés dans le menu déroulant. Pour en savoir plus, consultez la page de documentation sur les utilisateurs.

En l'absence de paramètres régionaux définis au niveau de chaque utilisateur ou d'un groupe d'utilisateurs, Looker attribue les utilisateurs aux régionaux de l'instance. Toutefois, si aucun fichier .strings n'est configuré pour les paramètres régionaux de l'instance, la localisation du modèle ne fonctionne pas pour ces utilisateurs. C'est pourquoi un fichier .strings doit être configuré pour chaque paramètre régional par défaut. Pour en savoir plus, consultez les sections default_locale ou Créer des fichiers de chaînes de paramètres régionaux.

Définition de paramètres régionaux pour les utilisateurs d'incorporations SSO

Vous pouvez inclure la valeur des paramètres régionaux de l'utilisateur dans une URL d'intégration SSO, comme n'importe quel autre attribut utilisateur. Le format exact requis pour les intégrations SSO dépend du langage de programmation utilisé pour créer votre script d'URL d'intégration SSO, mais le nom de l'attribut utilisateur est locale. Consultez la page de documentation sur l'intégration de l'authentification unique (SSO) pour en savoir plus sur les URL d'intégration SSO et sur les outils permettant de créer votre URL d'intégration SSO.

Utilisation de paramètres régionaux dans des variables Liquid

Comme décrit ci-dessus, la localisation de modèles vous permet de personnaliser l'affichage des libellés et descriptions de votre modèle en fonction des différents paramètres régionaux. Mais vous pouvez également inclure des clés de localisation dans des variables Liquid, ce qui vous permet de localiser vos valeurs de données.

Par exemple, dans notre fichier de chaînes régionales par défaut nommé en.strings.json, nous pouvons créer les clés de localisation domestic et international avec les entrées suivantes:

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

Puis, dans notre fichier es_ES.strings.json, nous pouvons fournir les versions en espagnol de ces clés de localisation :

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

À partir de là, nous pouvons utiliser les clés de localisation domestic et international dans les variables Liquid pour localiser la sortie d'une dimension:

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

Voici ce que nos utilisateurs de en peuvent voir:

Voici ce que nos utilisateurs de es_ES peuvent voir:

Vous pouvez également utiliser Liquid dans les filtres de tableau de bord et d'élément de tableau de bord pour localiser la valeur par défaut dans un filtre. Prenons l'exemple d'un tableau de bord LookML contenant une vignette issue de l'exploration située au-dessus, à laquelle le filtre suivant serait appliqué :

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

Voici ce que verront les utilisateurs avec les paramètres régionaux en lorsqu'ils exploreront ce bloc dans le tableau de bord:

Et voici ce que voient les utilisateurs avec les paramètres régionaux es_ES lorsqu'ils explorent cette tuile sur le tableau de bord:

Comprendre comment les règles de localisation s'appliquent aux objets étendus et affinés

Sachez que les règles de localisation s'appliquent lorsque vous prolongez des vues, des explorations ou des tableaux de bord LookML, et que vous affinez une vue ou une exploration.

Si vous avez étendu ou affiné un objet, puis ajouté des libellés ou des descriptions, vous devez fournir des définitions de localisation dans les fichiers de chaînes de paramètres régionaux.

Par exemple, si nous avons une vue flights:


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

Nous créons ensuite une vue qui étend la vue flights:

include: "/views/flights.view"

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

Dans nos fichiers de chaînes de paramètres régionaux, nous devons définir les deux chaînes de libellés de vue ("flight_info" et "enhanced_flight_info"). Si le niveau de localisation du projet est défini sur strict, nous ne pourrons valider aucune mise à jour tant que nous n'avons pas défini les nouveaux libellés ou descriptions.