Localiza tu modelo de LookML

La localización de modelos suele ocurrir junto con la localización de formatos de números y la selección de idiomas de la interfaz de usuario. Para obtener más información sobre estos temas, consulta las páginas de documentación Idiomas y formato de número de localización e Idiomas de interfaz de usuario admitidos.

Con la localización de modelos, puedes personalizar la forma en que se muestran las etiquetas y descripciones de tu modelo según la configuración regional del usuario.

No es necesario que la localización se base en la ubicación geográfica o el idioma. Puedes usar configuraciones regionales para representar otros factores distintivos, como usuarios internos o externos, o administradores frente a colaboradores individuales, y personalizar tus etiquetas y descripciones según corresponda.

Actualmente, la localización de modelos no es compatible con la importación de proyectos.

En esta página, se describen los pasos para localizar tu proyecto:

Para obtener más información sobre cómo localizar la interfaz de usuario de Looker o cómo localizar el formato de número, consulte las páginas de documentación sobre Idiomas de interfaz de usuario admitidos y Cómo localizar el formato de número.

Usa elementos localizados en tus archivos de modelo

Puedes localizar etiquetas, etiquetas de grupo y descripciones en tu modelo, incluidas las siguientes:

No se admite la localización para dimension_group. En su lugar, use group_label y group_item_label para crear su propio conjunto de dimensiones que se puedan localizar.

También puedes crear paneles de LookML localizados en tu proyecto. Los siguientes parámetros del panel de LookML se pueden localizar:

Para ver todos los campos del proyecto que se pueden localizar, puedes establecer el nivel de localización del proyecto en strict. Con esta configuración, el IDE de Looker muestra un error de validación de LookML para los elementos de LookML que se pueden localizar, pero que no tienen etiquetas, y para las strings de tu modelo de LookML que se pueden localizar, pero que no están definidas en los archivos de strings de configuración regional.

A continuación, se muestra un ejemplo de un archivo de vista con algunas etiquetas y descripciones:

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

Localizaremos estos valores en los archivos de strings con un nivel de localización permissive. Ten en cuenta que la dimensión location no tiene una etiqueta, por lo que podemos demostrar cómo se muestra una dimensión sin localización.

Crea archivos de strings de configuración regional

Los archivos de strings de configuración regional usan pares clave-valor para definir cómo se muestran las etiquetas y descripciones en tu modelo para cada configuración regional. En el lado izquierdo de cada par clave-valor, se encuentra la clave de localización, que es una etiqueta o string de descripción de su modelo. En el lado derecho del par clave-valor, puede definir cómo quiere que se muestre esa string en la IU de Looker.

Para cada configuración regional que quieras para tu proyecto, crea un archivo de strings dedicado. Debes crear solo un archivo de strings para cada configuración regional del proyecto. Debe haber un archivo de strings con un nombre que coincida con la configuración regional predeterminada. Por ejemplo, si especificaste default_locale: en en el archivo de manifiesto de tu proyecto, debes tener un archivo en tu modelo llamado en.strings.json. Cada string se debe definir en el archivo de strings de configuración regional default; de lo contrario, no se localizará.

La localización de modelos no tiene que basarse en la ubicación geográfica o en el idioma. Sin embargo, si usas la localización de modelos y también quieres usar el panel localizado y la interfaz de usuario de visualización local de Looker, debes hacer coincidir el título del archivo de strings con los códigos de configuración regional admitidos de Looker.

A continuación, te mostramos un ejemplo de un archivo en.strings.json que se utilizará para todos los usuarios con el valor Locale de en. En este ejemplo, en también se especifica como nuestra configuración regional predeterminada, por lo que todas las strings deben definirse en este archivo para poder localizarse.

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

Un usuario en vería en Looker lo siguiente:

Ten en cuenta lo siguiente:

  • En el archivo de vista anterior, no proporcionamos una etiqueta para la dimensión location, por lo que Looker muestra el nombre de la dimensión, en mayúsculas: &Location.
  • No definimos la localización para la etiqueta"country"en el archivo en.strings.json, por lo que Looker la muestra tal como se define en el archivo de vista, sin mayúsculas: "country".

Como otro ejemplo, podemos crear un archivo es_ES.strings.json que se use para todos los usuarios con un valor 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"
}

Un usuario es_ES vería en Looker lo siguiente:

Ten en cuenta lo siguiente:

  • Al igual que en el ejemplo anterior, en el archivo de vistas anterior, no proporcionamos una etiqueta para la dimensión location, por lo que Looker muestra el nombre de la dimensión, en mayúsculas: “Location” (Ubicación).
  • No definimos la localización para la etiqueta &country en nuestro archivo en.strings.json, que es nuestro archivo de strings con configuración regional predeterminado. Por lo tanto, aunque definimos &country; en nuestro archivo es_ES.strings.json, Looker no localiza esta string y muestra la etiqueta como se define en nuestro archivo de vista: "country".

Agregando configuración de localización al archivo de manifiesto de tu proyecto

Para habilitar la localización de tu proyecto, agrega el parámetro localization_settings al archivo de manifiesto de tu proyecto.

Si tu proyecto todavía no tiene un archivo de manifiesto, puedes crear uno desde el ícono + ubicado en la parte superior del navegador de archivos del IDE de Looker.

En el archivo de manifiesto, agrega la configuración de localización. Por ejemplo:

localization_settings: {
  default_locale: en
  localization_level: permissive
}

default_locale

El parámetro default_locale especifica el nombre del archivo de strings de configuración regional predeterminado en tu proyecto.

El archivo de strings de configuración regional predeterminado determina qué strings de tu modelo están localizadas. Incluso si se define una etiqueta o una string de descripción en otro archivo de strings de configuración regional, si no está definida en el archivo de strings de configuración regional default, la IU de Looker mostrará la string no localizada. Consulta esta sección anterior para obtener más información sobre cómo configurar archivos de strings de configuración regional.

La configuración regional predeterminada de tu proyecto no debe confundirse con la regional para los usuarios de Looker. Tu administrador de Looker puede establecer una configuración regional predeterminada para tu instancia. Si no se establece ningún valor predeterminado, Looker se establecerá de forma predeterminada en en. Si el administrador no ingresa específicamente un valor de Configuración regional para un usuario o un grupo de usuarios al que pertenece, Looker le asigna el usuario a la configuración regional de la instancia predeterminada. Además, si el administrador no estableció una configuración regional de instancia predeterminada, Looker asigna al usuario a la configuración regional en.

Por este motivo, a menos que estés seguro de que el administrador de Looker configure el valor Locale para todos los usuarios de Looker, debes configurar el parámetro default_locale de tu proyecto como la configuración regional predeterminada para tu instancia (o en si no se estableció ninguna) y definir la localización para todas tus etiquetas y descripciones en el archivo .strings.json de esa configuración regional.

localization_level

El nivel de localización de tu proyecto especifica si se permiten elementos no localizados en tu modelo:

  • Establece el nivel de localización en strict a fin de solicitar etiquetas localizadas para todos los modelos, las exploraciones, las vistas y los campos de tu proyecto. El IDE de Looker mostrará un error de validación de LookML para cualquiera de estos elementos que no tengan etiquetas y para las etiquetas y descripciones que no estén definidas en el archivo de strings de configuración regional predeterminado.
  • Establece el nivel de localización en permissive para permitir elementos sin etiquetas y para etiquetas y descripciones que no están definidas en el archivo de strings de localización predeterminado.

Incluso si quieres el nivel de localización del strict, puede ser útil establecer el nivel de localización del proyecto en permissive cuando desarrollas el proyecto para evitar errores de validación. Una vez que hayas terminado de localizar todas tus etiquetas y descripciones, puedes establecer el nivel de localización en strict para ver los errores.

Cómo asignar usuarios a una configuración regional

Una vez que hayas configurado tus archivos de strings de configuración regional, puedes asignar usuarios a una configuración regional que corresponda a uno de los archivos de strings de configuración regional. Esto se puede hacer a nivel de la instancia, del grupo de usuarios o del usuario individual, mediante el campo Configuración regional o el atributo de usuario locale.

Por ejemplo, si quieres que un usuario vea las etiquetas y descripciones que se definieron en el archivo es_ES.strings.json, el administrador de Looker debe establecer la configuración Configuración regional del usuario en es_ES:

Si desea ingresar una configuración regional personalizada con archivos de strings, haga clic en el campo Configuración regional y escriba el nombre del archivo de la string en lugar de seleccionar una configuración regional integrada en el menú desplegable. Para obtener más información, consulta la página de documentación de Usuarios.

Cuando no se configura una configuración regional para los usuarios a nivel individual o del grupo de usuarios, Looker asignará usuarios a la configuración regional de la instancia. Sin embargo, si no se configura un archivo .strings para la configuración regional de la instancia, la localización del modelo no funcionará para esos usuarios. Por esa razón, se debe configurar un archivo .strings para la configuración regional predeterminada de cada instancia. Puedes obtener más información en las secciones default_locale o Cómo crear archivos de strings de configuración regional.

Configuración de la configuración regional para usuarios SSO incorporados

Puedes incluir el valor de configuración regional del usuario en una URL de incorporación de SSO como cualquier otro atributo de usuario. El formato exacto que se requiere para las inserciones de SSO depende del lenguaje de programación utilizado para compilar la secuencia de comandos de la URL de incorporación de SSO, pero el nombre del atributo de usuario es locale. Consulta la página de documentación Incorporación de inicio de sesión único (SSO) para obtener más información sobre las URL de incorporación de SSO y las herramientas para compilar la URL de incorporación de SSO.

Usa la configuración regional en variables líquidas

Como se describió anteriormente, la localización del modelo te permite personalizar la visualización de las etiquetas y descripciones de tu modelo para diferentes configuraciones regionales. Sin embargo, también puede incluir claves de localización en Variables líquidas, que también le permiten localizar sus valores de datos.

Por ejemplo, en nuestro archivo de strings de configuración regional predeterminado llamado en.strings.json, podemos crear las claves de localización domestic y international con las siguientes entradas:

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

Luego, en nuestro archivo es_ES.strings.json, podemos proporcionar versiones en español de estas claves de localización:

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

Desde allí, podemos usar las claves de localización domestic y international en variables líquidas para localizar el resultado de una dimensión:

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

Ahora, estos son los datos de nuestros usuarios con la configuración regional en:

Y esto es lo que nuestros usuarios con la configuración regional de es_ES ven:

También puedes usar Líquido en los filtros de panel y elemento de panel para localizar el valor predeterminado en un filtro. Por ejemplo, si un panel LookML tiene un mosaico de la exploración anterior, y hay un filtro en ese mosaico definido de la siguiente manera:

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

A continuación, se muestra lo que los usuarios con la configuración regional en verían cuando exploraran desde ese mosaico en el panel:

Y esto es lo que verían los usuarios con la configuración regional es_ES cuando exploran desde ese mosaico en el panel:

Comprende cómo se aplican las reglas de localización a los objetos extendidos y mejor definidos

Ten en cuenta que las reglas de localización se aplican cuando extiendes las vistas, las exploraciones o los paneles de LookML, y cuando refinas las vistas o exploraciones.

Si extendiste o definiste mejor un objeto y, luego, agregaste etiquetas o descripciones nuevas, debes proporcionar definiciones de la localización en los archivos de strings de configuración regional.

Por ejemplo, si tenemos una vista flights:


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

Luego, creamos una vista nueva que extienda la vista flights:

include: "/views/flights.view"

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

En los archivos de strings de configuración regional, tendríamos que definir las dos strings de etiqueta de la vista ("flight_info" y "enhanced_flight_info"). Si el nivel de localización del proyecto está establecido en strict, no podremos confirmar las actualizaciones hasta que definamos las nuevas etiquetas o descripciones.