Dateien aus anderen Projekten importieren

Die Funktion zum Importieren lokaler Projekte ist eine experimentelle Labs-Funktion, mit der Dateien aus lokalen LookML-Projekten importiert werden. Experimentelle Funktionen sind nicht vollständig entwickelt und können erheblich geändert oder vollständig entfernt werden.

Das Importieren von Dateien aus Remote- oder lokalen LookML-Projekten ist derzeit nicht mit der Modelllokalisierung kompatibel.

Sie können Dateien aus anderen LookML-Projekten und externen Repositories in Ihr aktuelles Projekt importieren. So können Sie Modelldateien verwenden sowie Dateien und andere Dateien in mehreren Projekten ansehen.

Hierfür gibt es verschiedene Anwendungsfälle. Einige Beispiele:

  • Basiert auf einem installierten Looker Block, ohne direkte Änderungen daran vornehmen zu müssen. Wenn Looker Änderungen am Block vornimmt, können Sie diese leicht abrufen, da alle hinzugefügten LookML in einem separaten Repository gespeichert werden.

  • Basisprojekt verwalten, das automatisch anhand des Datenbankschemas generiert wird. Sie können alle benutzerdefinierten Dimensionen, Messwerte usw. in einem separaten Projekt speichern, in dem das gesamte LookML aus dem automatisch generierten Projekt importiert wird. Sie können das Basisprojekt regelmäßig neu generieren, wenn sich das Datenbankschema ändert, ohne dass alle Ihre benutzerdefinierten LookML-Daten überschrieben werden.

  • Gemeinsame Objekte werden in ein einzelnes Projekt gekapselt und dann in mehrere andere Projekte importiert. Wenn Sie beispielsweise eine Tabelle haben, die für mehrere Datenbanken verwendet wird, können Sie die Ansicht dafür in einem Projekt speichern und an einem zentralen Ort verwalten. Sie wird dann von mehreren anderen Projekten verwendet, indem die Tabelle in diese Projekte importiert wird.

Führen Sie die folgenden Aufgaben aus, um Dateien aus einem anderen Projekt zu importieren:

  1. Erstellen Sie eine Projektmanifestdatei.
  2. Geben Sie die lokalen oder Remote-Projekte an, die Sie importieren möchten.
  3. Dateien aus einem importierten Projekt ansehen
  4. Dateien aus einem importierten Projekt einschließen

Sie können dann auf Felder aus den Dateien des importierten Projekts verweisen und die im Import definierten Konstanten überschreiben, sofern die Konstanten die Überschreibung zulassen.

Projektmanifestdatei erstellen

Alle Projekte, die Dateien aus anderen Projekten importieren, müssen eine Projektmanifestdatei haben. Wenn Ihr Projekt noch keine Manifestdatei enthält, können Sie sie über das Symbol + oben im Dateibrowser der Looker-IDE erstellen.

Geben Sie diese im Manifest an, um Projekte zu importieren. Sie können lokale oder Remote-Projekte angeben, wie in den folgenden Abschnitten beschrieben.

Lokale Projekte importieren

Ihr Looker-Administrator muss die Labs-Funktion Lokales Projekt importieren aktivieren, damit lokale Dateien in Ihr Projekt importiert werden können.

Der Import lokaler Projekte kann nur verwendet werden, wenn das importierte Projekt auf derselben Looker-Instanz vorhanden ist. Es wird außerdem empfohlen, dass Entwickler Modellberechtigungen für die Modelle des importierten Projekts haben. Wenn Ihre Entwickler Modellberechtigungen im importierten Projekt haben, ist die Versionsverwaltung dynamisch. Das bedeutet, dass Änderungen im importierten Projekt sofort Auswirkungen auf das Projekt haben, in das er importiert wird. So können Entwickler Änderungen in beiden Projekten prüfen, bevor sie in die Produktion übernommen werden. Bei Entwicklern mit Modellberechtigungen in beiden Projekten spiegeln die importierten Projektdateien außerdem den Status Entwicklermodus wider. Wenn sich der Entwickler im Entwicklungsmodus befindet, wird in der Looker-IDE der Entwicklungsmodus der Dateien des importierten Projekts angezeigt. Wenn sich der Entwickler im Produktionsmodus befindet, zeigt die Looker-IDE den Produktionsmodus des importierten Projekts an.

Für den lokalen Import verwenden Sie den Parameter project_name, um das aktuelle Projekt anzugeben. Verwenden Sie einen oder mehrere local_dependency-Parameter, um das zu importierende Projekt anzugeben:

# This project
project_name: "my_project"

# The project to import
local_dependency: {
  project: "my_other_project"
}

In den folgenden Szenarien sollten Sie Remote-Projektimport anstelle eines lokalen Projekts importieren:

  • Ihre Entwickler haben keine Modellberechtigungen für die Modelle des importierten Projekts. In diesem Fall erstellt Looker einen Klon des Produktionsmodus des importierten Projekts und zeigt diese statische Version der Dateien in der IDE an. In dieser statischen Version wird nie die Version des Entwicklungsmodus der Dateien angezeigt. Außerdem kann sie auch beim aktuellen Produktionsmodus veraltet sein, ohne dass der Entwickler benachrichtigt wird. Es ist besser, den Remote-Produktimport zu verwenden und einen ref bereitzustellen, der einen Git-Zweig oder einen Git-Release im Remote-Projekt angibt. In diesem Fall werden in Looker automatisch neue Commits im Remote-Projekt erkannt, sodass Ihre Entwickler benachrichtigt werden und dann die neueste Version der Remote-Projektdateien abrufen können.
  • Ihre Entwickler müssen immer mit der Produktionsversion eines importierten Projekts arbeiten.
  • Ihre Entwickler müssen mit einer statischen Version der Dateien des importierten Projekts arbeiten.

Remote-Projekte importieren

Bei einem Remote-Import muss sich das importierte Projekt nicht auf derselben Instanz befinden. Das Projekt wird stattdessen über sein Remote-Git-Repository importiert.

Verwenden Sie den Parameter remote_dependency, um die Informationen für das Remote-Repository zu importieren. Der Parameter remote_dependency verwendet die folgenden Informationen und Unterparameter:

  • Der Name des importierten Projekts. Sie können einen beliebigen Namen verwenden. Im folgenden Beispiel lautet der Name des Projekts ga_360_block. Sie verwenden diesen Namen in include-Anweisungen, um auf die importierten Dateien in LookML-Projekten zu verweisen. Der Name wird auch als Ordnername im Ordner imported_projects der Looker-IDE verwendet.
  • Der Unterparameter url, in dem Sie die Adresse des externen Git-Repositorys angeben. Verwenden Sie die Haupt-URL des Repositorys.
  • Den Unterparameter ref, in dem Sie einen Git-Zweig, ein Git-Release-Tag oder das SHA-Wert eines Commits im Git-Repository angeben. Sie können ein Commit-SHA angeben, wenn Sie eine statische Versionsverwaltung wünschen, damit Änderungen im importierten Projekt nicht automatisch in Ihrem Projekt übernommen werden. Das ist eine gute Option für Looker Blocks. Sie können auch ein Git-Zweig oder ein Git-Release-Tag angeben, wenn Looker automatisch neue Commits im Remote-Projekt erkennen soll. Weitere Informationen finden Sie im Abschnitt Neue Versionen eines Remote-Projekts automatisch erkennen.
  • Der override_constant-Unterparameter, der ein optionaler Unterparameter ist, mit dem Sie den Wert einer Konstante überschreiben können, die in einem importierten Projekt definiert wurde.

Hier ist ein Beispiel für einen remote_dependency-Parameter in einer Projektmanifestdatei. In diesem Beispiel wird eine HTTPS-Verbindung verwendet:

remote_dependency: ga360_block {
  url: "https://github.com/llooker/google_ga360"
  ref: "master"
  override_constant: connection {
    value: "importing_project_connection"
  }
}

Sie können auch SSH verwenden:

remote_dependency: ga360_block {
  url: "git@github.com:llooker/google_ga360.git"
  ref: "master"
  override_constant: connection {
    value: "importing_project_connection"
  }
}

Nachdem Sie die Remote-Abhängigkeit hinzugefügt haben, müssen Sie möglicherweise die Importanmeldedaten für das Remote-Projekt konfigurieren. Weitere Informationen finden Sie im Abschnitt Authentifizierungs-Anmeldedaten für private Remote-Repositories konfigurieren auf dieser Seite.

Neue Versionen eines Remote-Projekts automatisch erkennen

Sie können festlegen, dass Looker automatisch neue Commits im Remote-Projekt erkennt, wenn Sie in der Manifestdatei einen Git-Zweig oder ein Git-Release-Tag im ref-Unterparameter von remote_dependency angeben.

Hier ist ein Beispiel für eine Remoteabhängigkeit, bei der der Zweig master im Unterparameter ref angegeben ist:

remote_dependency: exchange_rate {
  url: "https://github.com/llooker/datablocks-exchangerate.git"
  ref: "master"
}

Wenn die Zweige master mit neuen Commits aktualisiert wird, erkennt Looker die Änderungen automatisch.

Hier ist ein Beispiel für die Angabe des Release-Tags v1.0:

remote_dependency: e_faa_original {
  url: "https://github.com/llooker/google_ga360"
  ref: "v1.0"
}

Unabhängig vom Typ von ref, selbst bei einem Commit-SHA, zeigt die IDE die Schaltfläche Abhängigkeiten aktualisieren an, wenn Sie einen remote_dependency-Parameter in Ihr Projekt einfügen:

Klicken Sie auf die Schaltfläche, um die Remote-Projektdateien einzubinden. Wenn dies die erste Remote-Abhängigkeit ist, die Sie Ihrem Projekt hinzugefügt haben, wird durch das Aktualisieren von Abhängigkeiten außerdem Looker aufgefordert, eine Manifestdatei-Sperre zu erstellen. Looker verwendet die Manifestdatei-Sperrdatei, um die Version der Remote-Projekte zu verfolgen.

Wenn Sie einen Git-Zweig oder ein Git-Release-Tag im Unterparameter ref angeben, sucht Looker bei jeder Aktualisierung der Looker-IDE nach neuen Commits. Das ist der Fall, wenn ein Looker-Entwickler in den Entwicklungsmodus wechselt, eine Git-Aktion in der IDE ausführt oder den Browser aktualisiert.

Wenn neue Commits vorhanden sind, wird in Looker im Bereich für Git-Aktionen der IDE die Option Abhängigkeiten aktualisieren angezeigt:

Wählen Sie die Option Abhängigkeiten aktualisieren aus, um die neuesten Remote-Projektdateien in Ihr Projekt zu übernehmen.

Sobald Sie die neuesten Dateien haben, können Sie Ihre LookML validieren, um zu prüfen, ob alle Referenzen Ihres Projekts mit den aktualisierten Remote-Projektdateien funktionieren. So haben Sie die Möglichkeit, fehlerhafte Verweise zu korrigieren und die Änderungen für Nutzer ohne Ausfallzeiten bereitzustellen.

Manifestdatei-Sperre

Looker verwendet die Manifestdatei-Sperre, um die Versionen von remote importierten Projekten zu verfolgen:

Looker-Entwickler müssen die Manifestdatei-Lock-Datei nicht erstellen oder bearbeiten, da Lock-Dateien automatisch von Looker verwaltet werden.

Die Manifestdatei-Sperre enthält jedes Remote-Projekt, dargestellt durch einen remote_dependency-Eintrag mit den Unterparametern url und ref:

  • Der Parameter remote_dependency gibt den Namen für das Remote-Projekt an, das ein Looker-Entwickler in der Manifestdatei angegeben hat.
  • Der Unterparameter url gibt die Adresse des externen Git-Repositorys an, das ein Looker-Entwickler in der Manifestdatei angegeben hat.
  • Der Unterparameter ref zeigt die Version des Projekts (angezeigt durch ein Commit-SHA), die Looker in Ihrem Projekt verwendet:
    • Wenn das Remote-Projekt in der Manifestdatei mit einem ref eines Git-Zweigs oder einem Git-Release-Tag definiert wurde, zeigt der Parameter ref an, welche Version der Dateien (das Commit-SHA-Projekt) für Ihr Projekt derzeit verwendet wird. Wenn es im Remote-Projekt neue Commits gibt, wird in Looker in der IDE die Schaltfläche Abhängigkeiten aktualisieren angezeigt. So können Sie die neuesten Remote-Projektdateien übernehmen. Der Wert ref in der Manifestdatei-Sperrdatei wird dann aktualisiert, um das aktuelle Commit-SHA für dieses Zweig- oder Release-Tag anzuzeigen.
    • Wenn das Remote-Projekt in der Manifestdatei mit einem ref eines bestimmten Commit-SHA definiert wurde, ist der ref-Parameter in der Manifest-Sperrdatei dasselbe Commit-SHA.

Authentifizierungsdaten für private Remote-Repositories konfigurieren

Die Einstellungen Anmeldedaten importieren enthalten eine Liste der URLs für jedes Remote-Repository, das in der Projektmanifestdatei definiert wurde, den Authentifizierungstyp für das Repository (https oder ssh) und ob Looker erfolgreich eine Verbindung zum Repository herstellen kann.

Authentifizierungsdaten hinzufügen

So fügen Sie Authentifizierungsdaten für ein Repository hinzu:

  1. Bewegen Sie den Mauszeiger auf einen Repository-Namen, um die Schaltflächen Testen und Konfigurieren aufzurufen, und klicken Sie auf Konfigurieren.

  2. In Looker wird ein Dialogfeld angezeigt, in dem Sie Anmeldedaten für das Remote-Repository konfigurieren können. Im Dialogfeld wird der Typ der Anmeldedaten angezeigt, die für dieses bestimmte Repository erforderlich sind.

    • Wenn für die Authentifizierung ein Nutzername und ein Passwort (oder ein persönliches Zugriffstoken) zur Authentifizierung erforderlich sind, geben Sie Ihren Nutzernamen und Ihr Passwort oder Token ein und klicken Sie auf Änderungen speichern.

      Looker unterstützt nicht die detailgenauen persönlichen Zugriffstokens von GitHub. Wenn Sie Ihr Looker-Projekt über HTTPS mit GitHub verbinden möchten, verwenden Sie beim Erstellen eines persönlichen Zugriffstokens die Option Tokens (klassische) Version von GitHub.

    • Wenn für das Repository ein SSH-Schlüssel erforderlich ist, wie in diesem Beispiel, wird in Looker ein Dialogfeld mit Ihrem lokalen SSH-Schlüssel angezeigt. Klicken Sie auf Schlüssel kopieren, um den SSH-Schlüssel in die Zwischenablage zu kopieren und ihn der Liste der Schlüssel Ihres Repositorys hinzuzufügen.

      Wenn Ihr Remote-Projekt ein LookML-Repository ist, sind SSH-Schlüssel möglicherweise bereits vorhanden. Beispielsweise wurde dem Repository ein SSH-Schlüssel hinzugefügt, als das LookML-Projekt ursprünglich mit Git verbunden wurde. Belassen Sie alle vorhandenen SSH-Schlüssel, wenn Sie den neuen SSH-Schlüssel zum Repository hinzufügen.

  3. Klicken Sie nach dem Speichern der Anmeldedaten auf die Schaltfläche Testen, um den Looker-Zugriff auf das Repository zu testen:

    Nachdem Sie die Verbindungstests bestanden und eine Verbindung zum Repository hergestellt haben, wird im Abschnitt Anmeldedaten importieren neben dem Repository-Namen ein grünes Häkchen angezeigt.

Anmeldedaten für die Authentifizierung bearbeiten

So bearbeiten Sie die Authentifizierungsdaten für ein Repository:

  1. Bewegen Sie den Mauszeiger auf ein Repository, für das bereits Authentifizierungsanmeldedaten konfiguriert wurden, um die Schaltflächen Testen und Bearbeiten aufzurufen, und klicken Sie auf Bearbeiten:

  2. Wenn für die Authentifizierung ein Nutzername und ein Passwort (oder ein persönliches Zugriffstoken) zur Authentifizierung erforderlich ist, klicken Sie auf Anmeldedaten löschen und dann im Bestätigungs-Pop-up auf Ja, Anmeldedaten löschen.

  3. Geben Sie die neuen Anmeldedaten in das Pop-up-Fenster Git-Authentifizierung konfigurieren ein und klicken Sie auf Änderungen speichern.

Dateien aus einem importierten Projekt ansehen

Die Looker-IDE zeigt importierte Projektdateien im Ordner imported_projects des linken Navigationsbereichs an. Sie können auf eine importierte Projektdatei klicken, um ihren Inhalt anzusehen:

Dateien aus lokalen Projekten und Remote-Projekten werden im Ordner imported_projects aufgelistet.

Da sie nicht bearbeitet werden können, sind importierte Projektdateien nicht sichtbar, wenn Sie Dateien im Bulk in der IDE bearbeiten.

Sie können auch Objekte aus importierten Projektdateien im aktiven Projekt im Objektbrowser ansehen. Rufen Sie den Objektbrowser über die Navigationsleiste der Looker-IDE auf:

Außerdem können Nutzer mit der Berechtigung develop im Metadatenbereich Informationen zu Objekten aus importierten Projekten aufrufen, einschließlich Links zum Aufrufen der importierten Datei, in der das Objekt definiert ist. Weitere Informationen finden Sie auf der Dokumentationsseite zu Metadaten für LookML-Objekte.

Dateien aus einem importierten Projekt einschließen

Der Parameter include in einer Modelldatei gibt die Projektdateien an, die für das Modell zur Verfügung stehen. Wenn Sie in der Manifestdatei ein lokales oder remote-Projekt angegeben haben, können Sie den Parameter include in einer Modelldatei verwenden, um Dateien aus dem importierten Projekt anzugeben. Es dürfen nur Dateien verwendet werden, deren Projekt in der Manifestdatei aufgeführt ist.

Verwenden Sie den Dateinamen mit zwei Schrägstrichen (//) und dem Namen des importierten Projekts, wenn Sie eine Datei aus einem anderen Projekt include möchten. Geben Sie den importierten Projektnamen mit einem einzelnen Schrägstrich (/) und dem vollständigen Pfad zur Datei ein, die Sie einschließen möchten.

Diese include-Befehle geben beispielsweise die Datei users aus dem importierten Projekt e_flights und die Ansicht orders aus dem importierten Projekt e_commerce an:

include: "//e_flights/views/users.view.lkml"
include: "//e_commerce/public/orders.view.lkml"

Informationen zum Angeben von Pfaden mit aktivierten IDE-Ordnern finden Sie im Abschnitt Pfadsyntax auf der Dokumentationsseite Mit Ordnern in der IDE arbeiten.

Sie können Platzhalter verwenden, um mehrere Dateien einzuschließen. So schließen Sie beispielsweise alle Ansichtsdateien in das Verzeichnis /views/ des importierten Projekts e_flights ein:

include: "//e_flights/views/*.view"

Außerdem können Sie Platzhalter verwenden, um bestimmte Verzeichnisebenen oder rekursive Verzeichnisse im importierten Projekt zu berücksichtigen:

include: "//e_flights/*/*.view.lkml"
include: "//e_commerce/*/*.view.lkml"

Informationen zur Verwendung von Platzhaltern bei aktivierten IDE-Ordnern finden Sie im Abschnitt Platzhalterbeispiele auf der Dokumentationsseite Mit Ordnern in der IDE arbeiten.

Modelldateien werden einbezogen

Sie können keine Modelldatei aus einem anderen Projekt einschließen. Wenn Sie explorative Datenanalysen projektübergreifend wiederverwenden, optimieren oder erweitern möchten, können Sie im importierten Projekt eine separate Explore-Datei erstellen und diese auch in andere Projekte einbinden. Weitere Informationen finden Sie auf der Seite mit der Parameterdokumentation include im Abschnitt Explorative Modelle in ein Modell einbeziehen.

Einschließlich Dateien, die andere Dateien enthalten

Wenn Sie eine Datei mit anderen Dateien einschließen, werden alle enthaltenen Elemente aufgelöst, bevor die Datei an das nächste Projekt übergeben wird, in dem sie enthalten ist.

Wenn Sie beispielsweise in Ihr aktuelles Projekt eine Datei (A) aus einem anderen Projekt (proj_A) importieren und die importierte Datei einen include-Parameter enthält, der die Datei B aus dem Projekt proj_B enthält, wird die Datei B in die Datei A eingefügt, bevor die Datei A in das aktuelle Projekt importiert wird.

Datendateien importieren

Im Abschnitt Daten eines Projekts gespeicherte Dateien werden nicht importiert. Wenn Sie auf eine Datendatei aus einem importierten Projekt verweisen möchten, z. B. im map_layer-Parameter, verwenden Sie den vollständigen Pfad und Dateinamen der Datei. Beispiel:

map_layer: json_from_imported_project {
  file: "//path_to_imported_project/folder/filename.topojson"
  ...
}

Auf Dateien aus einem importierten Projekt verweisen

Nachdem Sie eine Ansichtsdatei in Ihr Projekt importiert haben, können Sie mithilfe der Syntax ${view_name.field_name} auf die Felder der importierten Ansicht verweisen, als wäre die Ansichtsdatei in diesem Projekt nativ. Angenommen, Sie haben das Projekt ga_360_block in die Manifestdatei Ihres Projekts importiert und haben in der Modelldatei die folgende include-Anweisung:

include: "//ga_360_block/ga_block.view"

Sie würden die Syntax ${ga_block.hits_total} verwenden, um aus der enthaltenen ga_block-Ansicht auf das Feld hits_total zu verweisen.

Konstanten in Dateien aus einem importierten Projekt verwenden

Mit LookML-Konstanten können Sie in der Manifestdatei Ihres Projekts einen Wert definieren, der in Ihrem gesamten Projekt wiederverwendet werden kann. Der Unterparameter export des Parameters constant gibt an, ob der Wert einer Konstante überschrieben werden kann, wenn Dateien, die auf diese Konstante verweisen, in ein anderes Projekt importiert werden.

Der export-Parameter hat folgende mögliche Werte:

  • none: Der Standardwert für export. Der Wert der Konstante kann in Ihrem Importprojekt nicht überschrieben werden. Das importierte Projekt verwendet den konstanten Wert, der in der Manifestdatei des importierten Projekts angegeben ist.
  • override_optional: Der Wert der Konstanten kann in Ihrem Importprojekt optional überschrieben werden. Wenn in der Manifestdatei des Importprojekts kein Wert angegeben ist, wird der ursprüngliche Wert aus dem importierten Projekt verwendet.
  • override_required: Das importierte Projekt muss den konstanten Wert überschreiben, der ursprünglich in der Manifestdatei des importierten Projekts angegeben war. Wenn im Importprojekt kein neuer konstanter Wert angegeben ist, zeigt Looker einen Fehler an.

Wenn Sie Dateien importieren, die in Ihrem Projekt auf eine Konstante verweisen, können Sie den Unterparameter override_constant von local_dependency oder remote_dependency in der Manifestdatei Ihres Projekts verwenden, um einen neuen Wert für diese Konstante anzugeben. Voraussetzung ist, dass im entsprechenden Projekt export für override_optional oder override_required festgelegt ist. Wenn Sie den Wert einer Konstante aus einem importierten Projekt überschreiben, wird das Projekt mit dem Wert verwendet, den Sie mit dem Parameter override_constant angegeben haben.

Konstanten sind nur für Dateien aus dem Projekt verfügbar, in dem sie ursprünglich definiert wurden. Konstanten, die in einem Projekt definiert sind, dessen Dateien Sie importiert haben, können daher nur von den importierten Dateien und nicht von im Importprojekt definierten Dateien verwendet werden.

Wenn Sie in den Dateien des Importprojekts eine Konstante verwenden möchten, sollten Sie mit dem Parameter constant eine neue Konstante in der Manifestdatei des Importprojekts definieren. Eine auf diese Weise festgelegte Konstante ist nur für die Dateien verfügbar, die im Importprojekt definiert sind.

Beispiel: Sie verwalten mehrere Datenbanken auf einer einzelnen Looker-Instanz und mit einem separaten Projekt für jede Datenbank. In diesem Beispiel wird angenommen, dass die Datenschemas für jede Datenbank identisch sind und dass es Ihr Ziel ist, eine Analyse einmal zu definieren und auf jedes Dataset anzuwenden.

In diesem Beispiel ist proj_core das Basisprojekt, in dem Sie Ansichten definiert haben, die Sie in andere Projekte importieren möchten. Außerdem können Sie die orders-Ansicht importieren, die folgendermaßen definiert ist:


view: orders {
  sql_table_name: "@{schema_name}.orders"
}

Das Schema, auf dem die orders-Ansicht basiert, wird im sql_table_name-Parameter mithilfe der Konstante schema_name angegeben. Diese ist in der Manifestdatei proj_core definiert. Da im Beispiel unten die Konstante schema_name auf export: override_required gesetzt ist, muss jedes Projekt, das schema_name importiert, seinen Wert mit dem Parameter override_constant überschreiben:


constant: schema_name {
  value: "proj_core_schema"
  export: override_required
}

Nehmen wir an, dass Sie die orders-Ansicht in ein lokales Projekt namens proj_a importieren möchten. Außerdem gibt es eine Tabelle namens orders in der Datenbank für proj_a, deren Struktur mit der Tabelle orders im Basisprojekt proj_core identisch ist.

Da sich proj_core und proj_a auf derselben Instanz befinden, können Sie mit local_dependency die Ansicht orders in proj_a importieren. Mit dem Unterparameter override_constant von local_dependency können Sie dann die Konstante schema_name so aktualisieren, dass sie auf das Schema proj_a_schema in der Manifestdatei für proj_a verweist:


project_name: "proj_a"

local_dependency: {
  project: "proj_core"
  override_constant: schema_name {
    value: "proj_a_schema"
  }
}

In diesem Beispiel wird die Konstante schema_name in project_core auf export: override_required gesetzt. Daher wird in Looker eine Fehlermeldung angezeigt, wenn Sie den Wert in proj_a (das Importprojekt) nicht überschreiben.

Wenn Sie die Konstante schema_name in proj_a überschreiben, können Sie die Felder, die Sie in der Ansicht orders in proj_core definiert haben, verwenden, anstatt eine neue Ansichtsdatei zu erstellen und Ihre Felder komplett neu zu definieren. In diesem Beispiel entspricht die Ansicht orders einer anderen Tabelle für jedes Projekt:

  • In proj_core basiert die Ansicht orders auf der Tabelle proj_core_schema.orders in Ihrer Datenbank.
  • In proj_a basiert die Ansicht orders auf der Tabelle proj_a_schema.orders in Ihrer Datenbank.