Auf dieser Seite wird auf den Parameter
extendsverwiesen, der Teil einer Ansicht ist.
extendskann auch als Teil eines Explores verwendet werden. Dies wird auf der Dokumentationsseite zum Parameterextends(für Explores) beschrieben.
extendskann auch als Teil eines LookML-Dashboards verwendet werden. Dies wird auf der Dokumentationsseite Dashboard-Parameter beschrieben.
Nutzung
view: view_name {
extends: [view_name, view_name, ...]
}
|
Hierarchie
extends |
Standardwert
Keine
Akzeptiert
Eckige Klammern mit einer durch Kommas getrennten Liste von Ansichtsnamen
|
Definition
Mit dem Parameter extends können Sie die Inhalte und Einstellungen einer anderen Ansichtsdatei als Ausgangspunkt verwenden. Bei Konflikten werden die Einstellungen der erweiternden Ansicht verwendet und die Einstellungen der Ansicht, die erweitert wird, überschrieben. Weitere Informationen dazu, wie Looker das macht, finden Sie unter Code mit „extends“ wiederverwenden.
Weitere Informationen zu LookML-Verfeinerungen
Das Erweitern einer View oder eines Explores ist ideal für Szenarien, in denen Sie mehrere Versionen der View oder des Explores benötigen. Wenn Sie jedoch nur eine Ansicht oder ein Explore ändern möchten, ohne die LookML-Datei zu bearbeiten, in der sie enthalten sind, sollten Sie stattdessen ein Refinement verwenden. Sie können auch einenextends-Parameter in einer Verfeinerung verwenden. Weitere Informationen und Anwendungsfälle finden Sie auf der Dokumentationsseite LookML-Verfeinerungen.
Wenn Sie eine Ansicht erweitern, ist es wichtig, den Parameter sql_table_name in der Ansicht zu verwenden, die erweitert werden soll, sofern er noch nicht vorhanden ist. Mit dem Parameter sql_table_name wird die Tabelle in Ihrer Datenbank definiert, die von einer Ansicht abgefragt wird. Der Standardwert für eine beliebige Ansicht ist der Name der Ansicht. Wenn Sie sql_table_name noch nicht verwenden, geben Sie einfach denselben Wert wie für den Namen der Datenansicht an.
Außerdem ist es wichtig, dass wir in unserer neuen Ansichtsdatei den Parameter include verwenden, um auf den Dateinamen der Ansicht zu verweisen, die wir erweitern möchten.
Vermeiden Sie es, Views zu erweitern, die auf persistenten abgeleiteten Tabellen (PDTs) basieren. Bei jeder Erweiterung eines PDT wird eine neue Kopie der Tabelle in Ihrer Datenbank erstellt. In diesem Fall sollten Sie stattdessen LookML-Verfeinerungen verwenden. Weitere Informationen und Anwendungsfälle finden Sie auf der Dokumentationsseite LookML-Verfeinerungen.
Beispiel
Hier ist eine Beispielansichtsdatei, die wir erweitern können. Die Ansicht heißt looker_events und der Dateiname der Ansicht ist events.view.
Datei: events.view
view: looker_events {
sql_table_name: looker_db.events ;;
# The normal contents of the view follow
}
Jetzt erstellen wir eine neue Ansichtsdatei und definieren eine Ansicht, die die looker_events-Ansicht erweitert. In unserer neuen Datei müssen wir mit dem Parameter include auf den Dateinamen der Ansicht verweisen, die wir erweitern möchten:
Datei: new_events.view
include: "events.view"
view: name_of_the_new_view {
extends: [looker_events]
measure: additional_measure {
type: count
}
# Additional things you want to add or change
}
Außerdem haben wir einen neuen Messwert hinzugefügt, der in der neuen Ansicht zusätzlich zu allen Dimensionen und Messwerten angezeigt wird, die in der erweiterten Ansicht looker_events definiert sind.
Erweiterungen für ein Objekt mit Metadaten ansehen
Sie können in der Looker IDE auf einen explore- oder view-Parameter klicken und im Metadatenbereich alle Erweiterungen des Objekts oder das Objekt, das es erweitert, ansehen. Weitere Informationen finden Sie auf der Dokumentationsseite Metadaten für LookML-Objekte.
Wichtige Punkte
Einige Parameter sind additiv
In vielen Fällen werden die Parameterwerte des erweiterten Objekts überschrieben, wenn das erweiternde Objekt denselben Parameter enthält. Die Werte des erweiternden Objekts haben dann Vorrang.
Erweiterungen können für einige Parameter jedoch additiv sein. Das bedeutet, dass die Werte aus dem erweiternden Objekt in Verbindung mit den Werten aus dem erweiterten Objekt verwendet werden.
Die folgenden Parameter sind additiv:
Für Dimensionen und Messwerte:
Für Ansichten:
extends(Sie können mehrereextendsverketten)
Im folgenden Beispiel hat die Ansicht carriers die Dimension name mit dem Parameter link:
view: carriers {
sql_table_name: flightstats.carriers ;;
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Google {{ value }}"
url: "http://www.google.com/search?q={{ value }}"
icon_url: "http://google.com/favicon.ico"
}
}
}
Hier sehen Sie die carriers_extended-Ansicht, die die carriers-Ansicht erweitert. Die Ansicht carriers_extended enthält auch eine Dimension name mit verschiedenen Einstellungen im Parameter link:
include: "/views/carriers.view.lkml"
view: carriers_extended {
extends: [carriers]
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Dashboard for {{ value }}"
url: "https://docsexamples.dev.looker.com/dashboards/307?Carrier={{ value }}"
icon_url: "https://www.looker.com/favicon.ico"
}
}
}
In der Ansicht carriers_extended sind die beiden Parameter link additiv. Die Dimension name enthält also beide Links.

Projekte mit Lokalisierung
Wenn Sie ein Objekt erweitern, müssen Sie beachten, dass Lokalisierungsregeln auch für Ihre Erweiterungen gelten. Wenn Sie ein Objekt erweitern und dann neue Labels oder Beschreibungen definieren, sollten Sie Lokalisierungsdefinitionen in den Gebietsschema-Zeichenfolgendateien Ihres Projekts angeben. Weitere Informationen finden Sie auf der Dokumentationsseite Ihr LookML-Modell lokalisieren.