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

借助 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 会打开定义该对象的文件。该文件是导入的项目文件,因此将处于只读状态。

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

如果您的项目包含扩展其他视图或探索的视图或探索,您可以使用对象浏览器面板查看扩展对象的 LookML 并转到该 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 精细调整文档页面。