Uso
dimension: field_name {
link: {
label: "nome do rótulo desejado"
url: "preferred_url"
icon_url : "url_of
}
Hierarquia
link |
Tipos de campo possíveis
Dimensão, medidaAceita
Vários parâmetros |
Definição
O parâmetro link
permite adicionar links da Web a dimensões e medidas para permitir que os usuários naveguem facilmente até conteúdo relacionado diretamente do Looker. A forma de um parâmetro link
é:
dimension: field_name {
link: {
label: "desired label name"
url: "desired_url"
icon_url: "url_of_an_image_file"
}
# Possibly more links
}
O parâmetro link
tem vários parâmetros filhos:
label
é o nome do link que você quer exibir para os usuários.url
é o URL para onde você quer enviar o link. É possível usar as variáveis líquidas para tornar os links dinâmicos, conforme descrito na seção Como usar variáveis líquidas comlink
nesta página.icon_url
é um URL, acessível ao navegador do usuário, que contém um arquivo de imagem. Isso ajuda os usuários a entenderem rapidamente para onde o link os levará. O parâmetroicon_url
não é obrigatório se você não quiser um ícone. Se você precisar de logotipos corporativos, tente fazer uma Pesquisa Google com o padrãohttp://www.google.com/s2/favicons?domain=[company website of interest]
para encontrar imagens no formato.ico
.
Exemplo
Uma empresa de e-commerce quer que os funcionários possam entrar em contato com o suporte do armazém diretamente do conteúdo do Looker, como um Look de pedidos pendentes do último mês. A aparência contém IDs de pedidos e o ID de usuário do cliente associado a cada pedido:
É possível adicionar um link à dimensão ID do pedido para disponibilizar essa ação ao usuário que visualiza o Look:
dimension: id {
primary_key: yes
type: number
sql: ${TABLE}.id ;;
link: {
label: "Contact Warehouse Support"
url: "mailto:warehouse@brettcase.com"
}
}
O usuário verá o link entre as opções no menu de links. Para acessar, clique no menu de três pontos:
Ao clicar no nome do link, o usuário é levado ao conteúdo vinculado. Nesse caso, uma nova guia com um rascunho de e-mail em branco endereçado ao endereço de e-mail especificado:
O exemplo acima inclui um parâmetro
sql
. Sesql
não for especificado, o Looker entenderá que há uma coluna na tabela com o mesmo nome do campo.
Comportamento do link
Quando um usuário clica em um link, o Looker abre o link em uma nova guia do navegador ou na mesma guia (ou iframe, para consultas incorporadas):
- Links absolutos, como
https://example.looker.com
, serão abertos em uma nova guia do navegador. - Links relativos, como
/dashboards/456
, são abertos na mesma guia do navegador ou iframe. Depois que o link for aberto, o usuário poderá clicar em Voltar no navegador para retornar à consulta original.
O usuário precisa ter a permissão explore
ou see_drill_overlay
para acessar os links.
Como usar variáveis líquidas com link
O parâmetro link
é compatível com variáveis líquidas para tornar o conteúdo ainda mais interativo no nível da linha e do valor. O LookML é compatível com dois tipos de tags de uso líquido: tags de entrada de valor {{ }}
e tags de lógica condicional {% %}
.
Dos dois, {{ }}
, em conjunto com as variáveis líquidas value
e _filters['view_name.field_name']
, é mais usado com link
. Isso ocorre porque {{ }}
codifica os valores de entrada diretamente no local em que eles são colocados, como em um URL.
Consulte esta página para ver exemplos de como usar as tags Liquid {{ }}
com as variáveis value
e _filters['view_name.field_name']
para tornar o conteúdo interativo com link
.
Inserir links para conteúdo externo
Por exemplo, suponha que você tenha uma dimensão artist_name
e queira que o usuário tenha a opção de executar uma pesquisa do Google sobre esse artista diretamente no Looker. É possível usar a variável de líquidos value
para adicionar essa opção a uma dimensão como esta:
dimension: artist_name {
link: {
label: "Google"
url: "http://www.google.com/search?q={{ value }}"
icon_url: "http://google.com/favicon.ico"
}
}
A experiência do usuário para este link de dimensão ficaria assim:
O link abre uma nova guia do navegador para a pesquisa do artista selecionado pelo Google. O nome do artista selecionado é inserido no URL em que {{ value }}
está posicionado.
Esse padrão pode ser replicado para outros sites externos acessados pelo navegador do usuário, como sistemas de gerenciamento de tíquetes, sistemas de gerenciamento de clientes e outras ferramentas comerciais, facilitando a navegação entre aplicativos da Web.
Vincular ao conteúdo no Looker
Além dos sites externos, você pode usar o parâmetro link
para direcionar os usuários a outros painéis "Explorars", "Looks" ou painéis relevantes do Looker e gerar uma experiência de navegação personalizada. Você também pode aplicar os mesmos exemplos a links no parâmetro LookML html
para campos.
Para começar, você precisa do URL da guia "Explorar", "Visualizar" ou "Painel" a que você quer vincular. Em seguida, é possível substituir elementos específicos do URL, como nomes e valores de filtro, por tags {{ }}
que contêm as variáveis value
e _filters['view_name.field_name']
. As variáveis vão inserir valores selecionados pelo usuário nos elementos de URL que eles substituirão. A estrutura básica dos URLs de conteúdo é a seguinte:
- Explorar:
https://instance_name.looker.com/explore/YOUR_MODEL_NAME/YOUR_EXPLORE_NAME?fields=view_name.field_name1,view_name.field_name2...
- Você pode encontrar o URL para "Explorar" existente selecionando a opção de ícone de engrenagem URL expandido.
- Os filtros de exploração aparecerão nos URLs como
f[view_name.field_name]
. Consulte a seção Vincular a um recurso Explorar relacionado para ver um exemplo.
- Aparência:
https://instance_name.looker.com/Looks/YOUR_LOOK_NUMBER
- Você pode acessar o URL de um Look existente copiando o URL do navegador na página "Look".
- Os filtros de aparência vão aparecer nos URLs como
f[view_name.field_name]
. Consulte a seção Como transmitir um valor de filtro existente para o conteúdo vinculado para ver um exemplo.
- Painel definido pelo usuário:
https://instance_name.looker.com/dashboards/YOUR_DASHBOARD_NUMBER?FILTER_NAME_1=VALUE&FILTER_NAME_2=VALUE
- Para ver o URL de um painel existente, copie o URL do navegador na página do painel.
- Se você estiver usando os painéis legados, o URL usará
dashboards-legacy
em vez dedashboards
no formato de URL.
- Painel LookML:
https://instance_name.looker.com/dashboards/YOUR_MODEL::YOUR_DASHBOARD
- Para ver o URL de um painel atual do LookML, copie o URL do navegador na página correspondente.
Os filtros do painel para os painéis definidos pelo usuário e LookML vão aparecer nos URLs como filter_name
, em que filter_name
é o nome dado ao filtro no painel. Consulte a seção Como transmitir um valor de filtro existente para o conteúdo vinculado para ver um exemplo.
Elementos de URLs, como valores de filtro e nomes, são codificados por URL com caracteres especiais, como ?
para indicar o início de uma string de consulta, &
para separar elementos e %20
para espaços. Consulte a seção Codificação de URL para outros operadores de comparação para ver um exemplo.
Assim que tiver o URL do conteúdo que você quer vincular, use o Liquid para inserir o valor de um campo em qualquer elemento do URL, usando as variáveis value
ou _filters['view_name.field_name']
e as tags {{ }}
. Consulte o tópico Como usar URLs e parâmetros de consulta da Comunidade do Looker para mais informações sobre as partes de um URL de consulta.
Exemplo: vinculação a uma exploração relacionada
Temos uma dimensão chamada Cidade. Queremos que os usuários possam acessar outro recurso "Explorar", com métricas da cidade e um filtro Cidade. O filtro "Explorar" vinculado deve ser filtrado pela cidade selecionada pelo usuário.
Para que isso seja possível, faça o seguinte:
- Encontre o URL do recurso Explorar para detalhar.
- Adicione um parâmetro
link
à dimensão City:
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "City Metrics Explore"
url: "https://instance_name.looker.com/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]=&sorts=orders.count+desc&limit=500"
}
}
Aqui, o URL foi reduzido para limit=500
, o que limita os resultados da guia "Explorar" a 500 linhas para facilitar a compreensão. Você pode incluir o restante do URL, que geralmente inclui a codificação de URL das configurações de visualização, conforme necessário.
- Insira a tag
{{ value }}
e a variável do líquido em que você quer inserir o valor no URL. Nesse caso, queremos colocar o valor em que o elemento de filtro,f[users.city]=
, está localizado na string de URL para que o recurso Explorar seja filtrado pela cidade selecionada pelo usuário:
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "City Metrics Explore"
url: "https://instance_name.looker.com/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]={{ value }}&sorts=orders.count+desc&limit=500"
}
}
A dimensão Cidade exibirá um menu de três pontos com a opção Explorar métricas de cidade:
Quando um usuário clica no link, ele é redirecionado para a exploração de métricas da cidade, filtrada pela cidade selecionada:
Também é possível preservar os valores de filtro atuais ao vincular ao conteúdo do Looker, conforme discutido no exemplo a seguir.
Exemplo: como transmitir um valor de filtro existente para o conteúdo vinculado
Outra variável líquida compatível com o parâmetro link
é _filters['view_name.field_name']
. Essa variável transmite os valores existentes para um filtro e os transmite para um recurso Explorar, painel ou Look vinculado.
Se você transmitir o filtro de um painel, o
_filters['view_name.field_name']
precisará se referir a um filtro de tipo de campo, conforme definido no LookML do painel ou na interface do usuário do painel legado.
Em URLs de conteúdo, é possível ver onde os valores de filtro são especificados e substituí-los pela variável _filters['view_name.field_name']
. Consulte o tópico Como usar URLs e parâmetros de consulta da Comunidade do Looker para informações sobre as partes de um URL de consulta.
Veja um exemplo de uma dimensão que usa a variável _filters['view_name.field_name']
no parâmetro link
para transmitir um valor de filtro existente para um campo chamado users.state
:
dimension: name {
link: {
label: "Business Pulse By State Dashboard"
url: "https://instance_name.looker.com/dashboards/694?State={{ _filters['users.state'] | url_encode }}"
}
}
Neste exemplo, se um usuário filtrar uma consulta pela dimensão users.state
, o painel vinculado será automaticamente filtrado pelos mesmos estados escolhidos na consulta original. Incluir o filtro Líquido url_encode
neste exemplo converte strings não seguras por URL em strings codificadas por porcentagem. Isso garante que valores de filtro com caracteres especiais, como espaços ou vírgulas, possam ser transmitidos para o painel vinculado.
No exemplo a seguir, o usuário filtrou uma consulta pelo estado "Califórnia". O link abre um painel que já está filtrado no estado da Califórnia:
Isso também funciona para transmitir valores de filtro para os recursos Explorar e Explorar vinculados:
dimension: name {
link: {
label: "Average Order Profit Look"
url: "https://instance_name.looker.com/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}"
}
link: {
label: "User Facts Explore Explore"
url: "https://instance_name.looker.com/explore/ecommerce/users?fields=users.id,users.name&f[users.state]={{ _filters['users.state'] | url_encode }}"
}
}
Você pode transmitir vários filtros colocando &
entre eles, como nos URLs especificados abaixo:
dimension: name {
link: {
label: "Business Pulse By State Dashboard"
url: "https://instance_name.looker.com/dashboards/694?State={{ _filters['users.state'] | url_encode }}&Date={{ _filters['orders.date'] | url_encode }}"
}
link: {
label: "Average Order Profit Look"
url: "https://instance_name.looker.com/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}&f[orders.date]={{ _filters['orders.date'] | url_encode }}"
}
}
Vinculação a painéis e visuais: um painel vinculado ou uma aparência precisa ser configurada com um filtro que aceite os valores especificados. No exemplo acima, o painel vinculado Business Pulse by State está configurado com um filtro em
users.state
, chamado "State", para que o valor do filtro_filters['users.state']
possa ser transmitido ao painel. Se um painel ou Look não tiver um filtro que possa usar os valores transmitidos, o link ainda funcionará, mas os valores não serão aplicados ao painel.
Para ver informações sobre como criar filtros do painel, consulte as páginas de documentação Como criar painéis do LookML e Como adicionar e editar filtros definidos pelo usuário.
Exemplo: como usar link
para personalizar as visualizações de detalhamento
Se o administrador do Looker tiver ativado o recurso Análise visual do Labs, você poderá personalizar a visualização exibida nas sobreposições de detalhamento de "Explorars", "Aparências" e "Painéis legados" usando o parâmetro link
e as variáveis de líquidos. A nova experiência do painel é compatível com o detalhamento visual usando o parâmetro link
sem a necessidade de ativar o recurso de perfuração visual.
Veja um exemplo de como configurar uma visualização de detalhamento para um gráfico de dispersão:
measure: count {
type: count_distinct
sql: ${id} ;;
drill_fields: [created_date, total_sale_price]
link: {
label: "Drill as scatter plot"
url: "
{% assign vis_config = '{\\"type\\": \\"looker_scatter\\"}' %}
\{\{ link \}\}&vis_config=\{\{ vis_config | encode_uri \}\}&toggle=dat,pik,vis&limit=5000"
}
}
Consulte o artigo Análise de dados mais avançada para ver mais exemplos de personalização.
Considerações importantes ao vincular ao conteúdo do Looker
Em alguns casos, é preciso incluir operadores de comparação de filtro além de igual a, incluir vários filtros ou escape de vírgulas em links para o conteúdo do Looker. As seções a seguir fornecem mais informações sobre esses casos de uso.
Codificação de outros operadores de comparação com URL
Se você quiser incluir um operador de comparação em um filtro vinculado que não seja igual a (=), é possível fazer isso usando a codificação de URL do operador.
Por exemplo, se você quiser que um filtro order_id
em um Look vinculado inclua valores inferiores (<) ao campo order_id
associado ao valor em que você está clicando, codifique parcialmente o caractere de operador (%3E
, neste caso) e o adicione ao URL:
f[orders.order_id]=%3E{{ other_orders.order_id._value }}
Incluir vários filtros
Mais de um filtro pode ser aplicado a "Aparências", "Painéis" e "Explorar" vinculados usando um "e" comercial (&) para separar cada filtro:
dimension: name {
link: {
label: "Drill Look"
url:"/looks/looknumber?&f[users.state]={{ value }}[users.region]={{ users.region._value }}&f[users.age]={{ _filters['users.age'] | url_encode }}"
}
}
Como fazer escape de vírgulas
Você pode inserir vírgulas nos valores vinculados usando a variável filterable_value
, onde normalmente é possível usar a variável value
.
O link a seguir é exibido em uma exploração que filtra os resultados pelo valor users.city
selecionado:
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "Drill by City"
url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]={{ value }}"
}
}
Se o usuário clicar em Santa Cruz, Califórnia, para ver os resultados filtrados por essa cidade, o detalhamento retornará todos os resultados que contêm Santa Cruz ou CA.
Se filterable_value
for usado em vez de value
, a vírgula terá escape:
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "Drill by City"
url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]={{ filterable_value }}"
}
}
O detalhamento retornará todos os resultados que contêm o valor inteiro da string Santa Cruz, CA.
Se você quiser codificar um valor de filtro que contém uma vírgula em um URL de detalhamento, faça o escape da vírgula colocando o valor entre aspas duplas e fazendo o escape com uma barra (/):
dimension: city {
type: string
sql: ${TABLE}.city;;
link: {
label: "Drill by City"
url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]=\"Santa Cruz, CA\"&sorts=users.email"
}
}
Outros recursos
- Consulte o artigo Análise de dados mais avançada na Central de Ajuda para conferir exemplos mais avançados.
- Consulte a página de documentação Variáveis líquidas para mais exemplos de como usar
{{ value }}
em links.