link

Utilizzo

view: view_name {
dimension: field_name {
link: {
label: "nome etichetta desiderato"
url: "desired_url"
icon_url :
"
Gerarchia
link
Tipi di campi possibili
Dimensione, misura

Accetta
Vari parametri

Definizione

Il parametro link consente di aggiungere link web a dimensioni e misure per consentire agli utenti di accedere facilmente ai contenuti correlati direttamente da Looker. La forma di un parametro link è:

dimension: field_name {
  link: {
    label: "desired label name"
    url: "desired_url"
    icon_url: "url_of_an_image_file"
  }
  # Possibly more links
}

Il parametro link ha diversi parametri secondari:

  • label è il nome del link che vuoi mostrare agli utenti.
  • url è l'URL a cui vuoi reindirizzare il link. Puoi utilizzare le variabili Liquid per rendere dinamici i link, come descritto nella sezione Utilizzo delle variabili Liquid con link in questa pagina.
  • icon_url è un URL, accessibile al browser dell'utente, che contiene un file immagine. In questo modo, per gli utenti sarà più facile capire a colpo d'occhio da dove verranno indirizzati. Il parametro icon_url non è obbligatorio se non vuoi un'icona. Se ti servono i loghi aziendali, prova a eseguire una ricerca su Google con il pattern http://www.google.com/s2/favicons?domain=[company website of interest] per trovare immagini nel formato .ico.

Esempio

Un'azienda di e-commerce vuole che i dipendenti possano contattare l'assistenza del warehouse direttamente dai contenuti di Looker, ad esempio un Look che mostra gli ordini in sospeso dell'ultimo mese. Il Look contiene gli ID ordine e l'ID utente del cliente associato a ogni ordine:

Puoi aggiungere un link alla dimensione ID ordini per rendere disponibile questa azione all'utente che visualizza il Look:


dimension: id {
  primary_key: yes
  type: number
  sql: ${TABLE}.id ;;
  link: {
    label: "Contact Warehouse Support"
    url: "mailto:warehouse@brettcase.com"
  }
}

L'utente vedrà il link tra le opzioni nel menu Link, a cui può accedere facendo clic sul menu con tre puntini:

Se fa clic sul nome del link, l'utente verrà indirizzato ai contenuti collegati. In questo caso, si aprirà una nuova scheda con una bozza di email vuota indirizzata all'indirizzo specificato:

L'esempio precedente include un parametro sql. Se sql non viene specificato, Looker presume che nella tabella sottostante sia presente una colonna con lo stesso nome del campo.

Quando un utente fa clic su un link, Looker lo apre in una nuova scheda del browser o nella stessa scheda (o iframe per le query incorporate):

  • I link assoluti, come https://example.looker.com, si apriranno in una nuova scheda del browser.
  • I link relativi, ad esempio /dashboards/456, si apriranno nella stessa scheda del browser o in un iframe. Una volta aperto il link, l'utente può fare clic su Indietro nel browser per tornare alla query originale.

Un utente deve disporre dell'autorizzazione explore o see_drill_overlay per accedere ai link.

Il parametro link supporta le variabili Liquid per rendere i contenuti ancora più interattivi fino al livello di riga e valore. LookML supporta due tipi di tag di utilizzo di Liquid: tag di input di valore {{ }} e tag {% %} di logica condizionale.

Delle due variabili, {{ }}, insieme alle variabili Liquid value e _filters['view_name.field_name'], è la più comunemente utilizzata con link. Questo perché i tag {{ }} inseriscono i valori direttamente nel punto in cui vengono inseriti, ad esempio all'interno di un URL.

Consulta gli esempi in questa pagina per trovare esempi di utilizzo dei tag {{ }} di Liquid con le variabili value e _filters['view_name.field_name'] per rendere i contenuti interattivi con link.

Collegamento a contenuti esterni

Ad esempio, supponiamo che tu abbia una dimensione artist_name e che l'utente abbia la possibilità di eseguire una ricerca Google per l'artista direttamente da Looker. Puoi utilizzare l'opzione Variabile Liquid di value per aggiungere questa opzione a una dimensione come la seguente:

dimension: artist_name {
  link: {
    label: "Google"
    url: "http://www.google.com/search?q={{ value }}"
    icon_url: "http://google.com/favicon.ico"
  }
}

L'esperienza dell'utente per questo link di dimensione avrà il seguente aspetto:

Il link apre una nuova scheda del browser che consente di cercare su Google l'artista selezionato. Il nome dell'artista selezionato viene inserito nell'URL in cui si trova {{ value }}.

Questo pattern può essere replicato per altri siti web esterni a cui il browser di un utente ha accesso, come i sistemi di gestione di ticket, i sistemi di gestione dei client e altri strumenti aziendali, per facilitare la navigazione tra le applicazioni web.

Collegamento a contenuti in Looker

Oltre ai siti esterni, puoi utilizzare il parametro link per indirizzare gli utenti ad altre esplorazioni, visualizzazioni o dashboard di Looker pertinenti per un'esperienza di esplorazione personalizzata. Puoi anche applicare gli stessi esempi ai link nel parametro LookML html per i campi.

Per iniziare, devi ottenere l'URL di una dashboard, un look o una dashboard esistente a cui vuoi collegarti. In seguito, puoi sostituire elementi specifici dell'URL, ad esempio valori e nomi dei filtri, con i tag {{ }} contenenti le variabili value e _filters['view_name.field_name']. Le variabili inseriranno i valori selezionati dall'utente negli elementi URL da sostituire. Di seguito è riportata la struttura di base degli URL di contenuti:

  • Esplora: https://instance_name.looker.com/explore/YOUR_MODEL_NAME/YOUR_EXPLORE_NAME?fields=view_name.field_name1,view_name.field_name2...
    • Puoi ottenere l'URL di Explore per le esplorazioni esistenti selezionando l'opzione dell'icona a forma di ingranaggio URL espanso.
    • I filtri Esplora verranno visualizzati negli URL come f[view_name.field_name]. Per un esempio, consulta la sezione Collegamento a un'esplorazione correlata.
  • Guarda: https://instance_name.looker.com/Looks/YOUR_LOOK_NUMBER
  • Dashboard definita dall'utente: https://instance_name.looker.com/dashboards/YOUR_DASHBOARD_NUMBER?FILTER_NAME_1=VALUE&FILTER_NAME_2=VALUE
    • Puoi ottenere l'URL di una dashboard esistente copiando l'URL del browser dalla pagina della dashboard.
    • Se utilizzi le dashboard precedenti, nel formato URL l'URL utilizzerà dashboards-legacy al posto di dashboards.
  • Dashboard LookML: https://instance_name.looker.com/dashboards/YOUR_MODEL::YOUR_DASHBOARD
    • Per ottenere l'URL di una dashboard LookML esistente, copia l'URL del browser dalla pagina della dashboard.

I filtri della dashboard per le dashboard definite dall'utente e in LookML vengono visualizzati negli URL come filter_name, dove filter_name è il nome assegnato al filtro inserito nella dashboard. Per un esempio, consulta la sezione Trasmettere un valore di filtro esistente ai contenuti collegati.

Gli elementi degli URL, come nomi e valori di filtri, sono codificati da URL con caratteri speciali, ad esempio ? per indicare l'inizio di una stringa di query, & per separare gli elementi e %20 per gli spazi. Per un esempio, consulta la sezione Codifica degli URL per altri operatori di confronto.

Una volta trovato l'URL dei contenuti a cui vuoi collegarti, puoi utilizzare Liquid per inserire il valore di un campo in qualsiasi elemento dell'URL, utilizzando le variabili value o _filters['view_name.field_name'] e i tag {{ }}. Per ulteriori informazioni sulle parti di un URL di query, consulta l'argomento della community di Looker Utilizzo di URL e parametri di ricerca.

Abbiamo una dimensione denominata Città. Vogliamo che gli utenti possano accedere a un'altra pagina Esplora esistente, con le metriche della città e un filtro Città. Vogliamo che la funzionalità Esplora collegata venga filtrata in base alla città selezionata dall'utente.

Procedi nel seguente modo:

  1. Recuperare l'URL dell'esplorazione esistente per visualizzare i dati in dettaglio.
  2. Aggiungi un parametro link alla dimensione Città:
  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"
  }
  }

Qui l'URL è stato abbreviato a limit=500, il che limita i risultati dell'esplorazione a 500 righe, per chiarezza, puoi includere il resto dell'URL, che in genere include la codifica degli URL delle impostazioni di visualizzazione, in base alle necessità.

  1. Inserisci il tag {{ value }} e la variabile Liquid in cui vuoi inserire il valore nell'URL. In questo caso, vogliamo inserire il valore in cui l'elemento filtro f[users.city]= si trova nella stringa dell'URL per l'esplorazione per filtrare in base alla città selezionata dall'utente:
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"
  }
}

Nella dimensione Città viene visualizzato un menu con tre puntini che mostra l'opzione Esplora le metriche della città:

Quando un utente fa clic sul link, viene reindirizzato a City Metrics Explore (Esplora metriche della città), filtrato in base alla città selezionata:

Puoi anche preservare i valori di filtro esistenti quando esegui il collegamento a contenuti Looker, come illustrato nell'esempio seguente.

Esempio: trasmettere un valore di filtro esistente ai contenuti collegati

Un'altra variabile Liquid supportata dal parametro link è _filters['view_name.field_name']. Questa variabile prende i valori esistenti inseriti per un filtro e li passa a una Esplora, a una dashboard o a un Look collegato.

Se trasmetti il filtro da una dashboard, _filters['view_name.field_name'] deve fare riferimento a un filtro di tipo di campo, come impostato nel dashboard LookML della dashboard o nell'interfaccia utente della dashboard precedente.

Negli URL dei contenuti, puoi vedere dove sono specificati i valori dei filtri e sostituirli con la variabile _filters['view_name.field_name']. Per informazioni sulle parti di un URL query, consulta l'argomento della community di Looker Utilizzo di URL e parametri di ricerca.

Ecco un esempio di dimensione che utilizza la variabile _filters['view_name.field_name'] nel proprio parametro link per passare un valore di filtro esistente per un campo chiamato 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 }}"
  }
}

In questo esempio, se un utente filtra una query in base alla dimensione users.state, la dashboard collegata viene automaticamente filtrata in base agli stessi stati scelti nella query originale. L'inclusione del filtro Liquid url_encode in questo esempio converte le stringhe non sicure per gli URL in stringhe con codifica percentuale. Ciò consente di trasmettere alla dashboard collegata dei valori di filtro contenenti caratteri speciali, come spazi o virgole.

Nel seguente esempio, l'utente ha filtrato una query in base allo stato "California". Il link apre una dashboard già filtrata nello stato della California:

Questo avviene anche per trasmettere i valori del filtro ai Look e alle esplorazioni collegati:

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

Puoi trasmettere più filtri inserendo &, ad esempio negli URL specificati di seguito:

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

Collegamento a dashboard e Look: è necessario configurare una dashboard o un Look collegato con un filtro che accetti i valori del filtro specificati. Nell'esempio precedente, la dashboard Business Pulse by State collegata è configurata con un filtro users.state, chiamato State, in modo che il valore del filtro _filters['users.state'] possa essere trasmesso alla dashboard. Se una dashboard o un Look non dispone di un filtro che può utilizzare i valori passati, il link funzionerà comunque, ma i valori del filtro non verranno applicati alla dashboard.

Per informazioni sulla creazione di filtri della dashboard, consulta le pagine Creazione di dashboard LookML e la pagina relativa all'aggiunta e alla modifica di filtri della dashboard definiti dall'utente.

Se l'amministratore di Looker ha attivato la funzionalità Visual Drilling di Labs, puoi personalizzare la visualizzazione visualizzata negli overlay di drill di Explore, Look e dashboard legacy utilizzando il parametro link e le variabili Liquid. La nuova esperienza in Dashboard supporta il drill-down visivo mediante il parametro link, senza dover attivare la funzionalità dei lab Visual Drilling.

Ecco un esempio di impostazione di una visualizzazione dettagliata per un grafico a dispersione:


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

Consulta l'articolo del Centro assistenza "Visualizzazione più dettagliata dei dati" per altri esempi di personalizzazione delle visualizzazioni dettagliate.

Aspetti da considerare per il collegamento a contenuti di Looker

In alcuni casi, devi includere operatori di confronto dei filtri oltre ad uguale a, includere più filtri o utilizzare le virgole di escape nei link ai contenuti di Looker. Le seguenti sezioni forniscono ulteriori informazioni su questi casi d'uso.

Codifica degli URL per altri operatori di confronto

Se vuoi includere un operatore di confronto in un filtro collegato diverso da uguale a (=), puoi farlo codificando l'URL dell'operatore.

Ad esempio, se vuoi che un filtro order_id su un Look collegato includa valori inferiori a (<) il campo order_id associato al valore su cui stai facendo clic, devi codificare parzialmente il carattere dell'operatore (%3E, in questo caso) e aggiungerlo all'URL:

f[orders.order_id]=%3E{{ other_orders.order_id._value }}
Includere più filtri

Puoi applicare più di un filtro a Look, dashboard ed esplorazioni collegati utilizzando la e commerciale (&) per separare ciascun 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 }}"
  }
}
Carattere di escape per le virgole

Puoi eseguire l'escape delle virgole nei valori collegati con la variabile filterable_value, dove normalmente potresti utilizzare la variabile value.

Il seguente link mostra un'esplorazione che filtrerà i risultati in base al valore users.city selezionato:

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 l'utente fa clic su Santa Cruz, CA per visualizzare in dettaglio i risultati filtrati per questa città, il risultato restituito restituirà tutti i risultati contenenti Santa Cruz o CA.

Se al posto di value viene utilizzato filterable_value, la virgola viene interpretata letteralmente:

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

Il drill risultante restituirà tutti i risultati che contengono l'intero valore della stringa Santa Cruz, CA.

Se vuoi eseguire l'hard-coding di un valore di filtro che contiene una virgola in un URL di drill, puoi ignorare la virgola includendo il valore tra virgolette doppie e seguito da una 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"
    }
}

Risorse aggiuntive