使用对象浏览器面板导航项目

借助 Looker IDE 中的对象浏览器面板,您可以在一个位置查看项目中的所有对象,以及这些对象之间的层次结构关系。对于按文件或文件夹浏览项目而言,这是一种非常实用的替代方案。

查看项目中的对象

对象浏览器面板会显示项目中定义的模型、探索、视图和字段,以及对象的层次结构和每个对象的类型。如果您的项目还包含导入的文件,您可以在本页面的后面部分详细了解如何查看这些对象

如需使用对象浏览器面板,请点击 IDE 导航栏中的 Object Browser 图标

对象浏览器面板按类型对对象进行分组,并且每种类型的对象会按字母顺序排序。使用对象浏览器面板,您可以通过展开或收起对象显示或隐藏对象的层次结构。

您可以收起和展开模型、探索和视图,以显示或隐藏它们包含的对象。在对象浏览器面板中,选择对象名称左侧的箭头可折叠或展开该对象。默认情况下,项目中的任何模型都会在对象浏览器面板中展开,从而显示模型中定义的探索列表。

查看对象的类型

对象浏览器面板会列出以下对象类型:

您可以在对象浏览器面板中将鼠标悬停在某个对象的名称上,查看项目中对象的类型。

对象浏览器面板会同时显示用于识别对象类型的图标和文本标签:

  • - 型号
  • - 探索
  • - 查看
  • - 维度
  • - 维度组
  • - 衡量
  • - 过滤条件
  • - 参数

将鼠标悬停在对象浏览器面板中的某字段名称上,即会显示该字段的 type 子参数的值。在以下示例中,id 对象左侧的图标表示其是一个维度,将鼠标悬停在 id 维度上,表明它是一个 type: number 维度:

对象浏览器会在样本 ID 字段的名称旁显示维度图标,当鼠标指针悬停时会指明数字类型。

您可以使用以下方法之一从对象浏览器面板直接导航到对象的 LookML:

点击对象的名称

如需导航到对象的 LookML,请按以下步骤操作:

  1. 在对象浏览器面板中,点击对象的名称。
  2. IDE 会打开定义了对象的文件,并将光标放在该对象声明的第一行上。

搜索对象

如需搜索对象或文件,请按以下步骤操作:

  1. 在对象浏览器面板中,点击跳转到对象或文件图标

    或者,使用键盘快捷键 Command-J (Mac) 或 Ctrl+J (Windows)。

  2. 输入搜索字词。Looker 会显示与您的搜索字词匹配的对象和文件列表。

特殊情况

在对象浏览器面板中查看导入的对象

当您从其他项目导入文件并在活动项目中包含这些导入的文件时,还可以使用对象浏览器面板查看导入的对象。

例如,假设您已使用项目的清单文件中的 local_dependency 参数导入一个名为 e_redlook 的本地项目,其中包含一个名为 product_facts 的视图:


# Your project
project_name: "e_thelook"

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

如需将 product_facts 视图提供给模型,您可以添加该视图并创建 product_facts 探索:


include: "//e_redlook/views/product_facts.view"
explore: product_facts {}

然后,您可以在对象浏览器面板中查看 product_facts 探索,并展开“探索”以显示其中包含的所有视图和字段。

当您从导入的项目中选择对象时,Looker 会打开定义了该对象的文件。该文件是导入的项目文件,因此将处于只读状态。

在对象浏览器面板中查看扩展对象

如果您的项目包含一个视图或一个用于extends另一个视图或“探索”的“探索”,您可以使用对象浏览器面板查看和导航到扩展对象的 LookML。当您展开某个视图以延伸另一个视图时,对象浏览器面板会显示基本视图中的字段,以及您在扩展视图中添加的所有字段。

例如,以下视图文件定义了一个名为 user_with_age_extension 的视图,用于扩展另一个名为 users_extended 的视图,并添加了新字段:

include: "/views/users_extended.view"

view: user_with_age_extension {
  extends: [users_extended]

  dimension: age {
    type: number
    sql: ${TABLE}.age ;;
  }

  dimension: zip {
    type: zipcode
    sql: ${TABLE}.zip ;;
  }
}

对象浏览器面板现在既会显示基本 users_extended 视图中定义的字段,也会显示 user_with_age_extension 视图中定义的新字段。

您可以通过在对象浏览器面板中选择扩展对象的名称,导航到扩展对象的 LookML

在对象浏览器面板中查看经过优化的对象

您可以使用对象浏览器面板查看优化视图或探索的内容,或者转到 LookML 以获取项目中的优化。

对象浏览器面板会列出优化条件以及它们所构建的探索或视图作为单个对象,而不是单独显示优化目标及其基础对象。如果您使用优化功能向视图添加字段或将视图加入探索,您添加的字段或视图将与原始视图的内容一起显示。

在对象浏览器面板中点击优化视图的名称或优化“探索”时,IDE 会打开到 LookML 中定义了优化的行。如果对某个视图或探索进行了多次优化,IDE 会按包含顺序导航到该对象的最后一次优化。

例如,假设您想向名为 user_with_age_extension 的视图添加一个新的维度 country,而不修改该视图的原始 LookML。如需优化 user_with_age_extension 视图,请使用 view 参数,并在视图名称前添加一个加号 (+):


view: +user_with_age_extension {

  dimension: country {
    type: string
    map_layer_name: countries
    sql: ${TABLE}.country ;;
  }
}

现在,当您展开对象浏览器面板中的 user_with_age_extension 视图时,country 字段会与视图的原始字段一起显示。

当您为项目添加优化条件时,请注意优化条件的应用顺序。系统会在单个文件中逐行应用优化,如果对象在多个文件中进行了多次优化,系统会按照文件添加的顺序应用优化。如需了解优化的应用顺序,请参阅 LookML 优化文档页面。