사용
view: view_name {
dimension: field_name {
link: {
label: "desired label name"
url: "desired_url"
icon_url: "url_of_an_image_file"
}
# Possibly more links
}
}
|
계층 구조
link |
사용 가능한 입력란 유형
측정기준, 측정값
허용
다양한 매개변수
|
정의
link 매개변수를 사용하면 측정기준과 측정값에 웹 링크를 추가하여 사용자가 Looker에서 직접 관련 콘텐츠로 쉽게 이동할 수 있습니다. link 매개변수의 형식은 다음과 같습니다.
dimension: field_name {
link: {
label: "desired label name"
url: "desired_url"
icon_url: "url_of_an_image_file"
}
# Possibly more links
}
link 매개변수에는 여러 하위 매개변수가 있습니다.
label은 사용자에게 표시할 링크의 이름입니다.url은 링크가 이동할 URL입니다. 이 페이지의 `link`와 함께 Liquid 변수 사용 섹션에 설명된 대로 Liquid 변수를 사용하여 링크를 동적으로 만들 수 있습니다.linkicon_url은 사용자 브라우저에서 액세스할 수 있는 이미지 파일이 포함된 URL입니다. 이를 통해 사용자는 링크가 어디로 연결되는지 한눈에 쉽게 이해할 수 있습니다. 아이콘이 필요하지 않은 경우icon_url매개변수는 필수가 아닙니다. 기업 로고가 필요한 경우,http://www.google.com/s2/favicons?domain=[company website of interest]형식으로 Google 검색을 실행하여.ico형식의 이미지를 찾아볼 수 있습니다.
예
전자상거래 회사는 직원이 지난달의 보류 중인 주문을 표시하는 Look과 같은 Looker 콘텐츠에서 직접 창고 지원팀에 문의할 수 있기를 원합니다. Look에는 주문 ID와 각 주문과 연결된 고객의 사용자 ID가 포함되어 있습니다.

주문 ID 측정기준에 링크를 추가하여 Look을 보는 사용자가 이 작업을 실행할 수 있도록 할 수 있습니다.
dimension: id {
primary_key: yes
type: number
sql: ${TABLE}.id ;;
link: {
label: "Contact Warehouse Support"
url: "mailto:warehouse@altostrat.com"
}
}
Look에서 사용자는 주문 ID 필드의 값에 대한 점 3개로 된 메뉴를 클릭하여 액세스하는 링크 메뉴의 옵션 중에서 창고 지원팀에 문의 링크를 볼 수 있습니다.

링크 이름을 클릭하면 사용자가 연결된 콘텐츠로 이동합니다. 이 경우 지정된 이메일 주소로 전송되는 빈 이메일 초안이 있는 새 탭입니다.
링크 동작
사용자가 링크를 클릭하면 Looker는 새 브라우저 탭 또는 동일한 탭 (또는 삽입된 쿼리의 경우 iframe)에서 링크를 엽니다.
https://example.looker.com과 같은 절대 링크는 새 브라우저 탭에서 열립니다./dashboards/456과 같은 상대 링크는 동일한 브라우저 탭 또는 iframe에서 열립니다. 링크가 열리면 사용자는 브라우저에서 뒤로 를 클릭하여 원래 쿼리로 돌아갈 수 있습니다.
사용자가 링크에 액세스하려면 explore 또는 see_drill_overlay 권한이 있어야 합니다.
link와 함께 Liquid 변수 사용
link 매개변수는 Liquid 변수를 지원하여 콘텐츠를 행 및 값 수준까지 더욱 상호작용적으로 만듭니다. LookML은 두 가지 유형의 Liquid 사용 태그, 즉 값 입력 {{ }} 태그와 조건부 로직 {% %} 태그를 지원합니다.
두 가지 중 {{ }}은 value 및 _filters['view_name.field_name'] Liquid 변수와 함께 link에 가장 일반적으로 사용됩니다. 이는 {{ }} 태그가 URL 내와 같이 배치된 위치에 값을 직접 입력하기 때문입니다.
이 페이지의 예시에서 Liquid {{ }} 태그를 value 및 _filters['view_name.field_name'] 변수와 함께 사용하여 콘텐츠를 link와 상호작용적으로 만드는 방법을 알아보세요.
외부 콘텐츠에 연결
예를 들어 artist_name 측정기준이 있고 사용자가 Looker에서 바로 해당 아티스트에 대한 Google 검색을 실행할 수 있도록 하려고 한다고 가정해 보겠습니다. value Liquid 변수를 사용하여 다음과 같이 측정기준에 해당 옵션을 추가할 수 있습니다.
dimension: artist_name {
link: {
label: "Google"
url: "http://www.google.com/search?q={{ value }}"
icon_url: "http://google.com/favicon.ico"
}
}
사용자가 아티스트 이름 필드의 값에 대한 점 3개로 된 메뉴를 클릭하면 Looker는 샘플 LookML에서 생성된 링크를 포함하는 링크 메뉴를 표시합니다. 링크는 선택한 아티스트에 대한 Google 검색을 위해 새 브라우저 탭을 엽니다. 선택한 아티스트 이름은 {{ value }}가 배치된 URL에 삽입됩니다.
이 패턴은 웹 애플리케이션 간의 탐색을 용이하게 하기 위해 티켓 관리 시스템, 클라이언트 관리 시스템, 기타 비즈니스 관련 도구와 같이 사용자 브라우저에서 액세스할 수 있는 다른 외부 웹사이트에 복제할 수 있습니다.
Looker의 콘텐츠에 연결
외부 사이트 외에도 link 매개변수를 사용하여 사용자를 맞춤 드릴 환경을 위한 다른 관련 Looker Explore, Look 또는 대시보드로 안내할 수 있습니다. 필드의 LookML html 매개변수의 링크에도 동일한 예를 적용할 수 있습니다.
시작하려면 연결할 기존 Explore, Look 또는 대시보드의 URL을 가져와야 합니다. 그런 다음 필터 값 및 이름과 같은 URL의 특정 요소를 {{ }} 태그로 바꿀 수 있습니다. 여기에는 value 및 _filters['view_name.field_name'] 변수가 포함됩니다. 변수는 사용자가 선택한 값을 대체하는 URL 요소에 입력합니다. 콘텐츠 URL의 기본 구조는 다음과 같습니다.
- Explore:
/explore/YOUR_MODEL_NAME/YOUR_EXPLORE_NAME?fields=view_name.field_name1,view_name.field_name2...- 확장된 URL 톱니바퀴 아이콘 옵션을 선택하여 기존 Explore의 Explore URL을 가져올 수 있습니다.
- Explore 필터는 URL에
f[view_name.field_name]으로 표시됩니다. 예는 관련 Explore에 연결 섹션을 참고하세요.
- Look:
/looks/YOUR_LOOK_NUMBER- Look 페이지에서 브라우저 URL을 복사하여 기존 Look의 URL을 가져올 수 있습니다.
- Look 필터는 URL에
f[view_name.field_name]으로 표시됩니다. 예는 연결된 콘텐츠에 기존 필터 값 전달 섹션을 참고하세요.
사용자 정의 대시보드:
/dashboards/YOUR_DASHBOARD_NUMBER?FILTER_NAME_1=VALUE&FILTER_NAME_2=VALUE- 대시보드 페이지에서 브라우저 URL을 복사하여 기존 대시보드의 URL을 가져올 수 있습니다.
LookML 대시보드:
/dashboards/YOUR_MODEL::YOUR_DASHBOARD- 대시보드 페이지에서 브라우저 URL을 복사하여 기존 LookML 대시보드의 URL을 가져올 수 있습니다.
사용자 정의 대시보드와 LookML 대시보드의 대시보드 필터는 URL에 filter_name으로 표시됩니다. 여기서 filter_name은 대시보드에 배치된 필터에 지정된 이름입니다. 예는 연결된 콘텐츠에 기존 필터 값 전달 섹션을 참고하세요.
필터 값 및 이름과 같은 URL 요소는 쿼리 문자열의 시작을 나타내는 ? 요소를 구분하는 & 공백을 나타내는 %20와 같은 특수문자로 URL 인코딩됩니다. 예는 다른 비교 연산자 URL 인코딩 섹션을 참고하세요.
연결할 콘텐츠의 URL이 있으면 Liquid를 사용하여 value 또는 _filters['view_name.field_name'] 변수와 {{ }} 태그를 사용하여 필드 값을 URL의 모든 요소에 삽입할 수 있습니다. 쿼리 URL의 부분에 대한 자세한 내용은 URL 및 쿼리 매개변수 사용 Looker 커뮤니티 게시물을 참고하세요.
예: 관련 Explore에 연결
도시 라는 측정기준이 있습니다. 사용자가 도시 측정항목과 도시 필터가 있는 다른 기존 Explore에 액세스할 수 있도록 하려고 합니다. 연결된 Explore가 사용자가 선택한 도시로 필터링되기를 원합니다.
이렇게 하려면 다음과 같은 조치가 필요합니다.
- 드릴할 기존 Explore의 URL을 가져옵니다.
- 도시 측정기준에
link매개변수를 추가합니다.
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "City Metrics Explore"
url: "/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]=&sorts=orders.count+desc&limit=500"
}
}
여기서 URL은 명확성을 위해 Explore 결과를 500개 행으로 제한하는 limit=500으로 단축되었습니다. 필요에 따라 시각화 설정의 URL 인코딩을 일반적으로 포함하는 나머지 URL을 포함할 수 있습니다.
- 값을 URL에 삽입할 위치에 Liquid
{{ value }}태그와 변수를 삽입합니다. 이 경우 사용자가 선택한 도시로 필터링할 Explore의 URL 문자열에서 필터 요소f[users.city]=가 있는 위치에 값을 배치하려고 합니다.
dimension: city {
type: string
sql: ${TABLE}.city ;;
link: {
label: "City Metrics Explore"
url: "/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]={{ value }}&sorts=orders.count+desc&limit=500"
}
}
그러면 도시 측정기준에 도시 측정항목 Explore 옵션을 표시하는 점 3개로 된 링크 메뉴가 표시됩니다.

사용자가 링크를 클릭하면 선택한 도시로 필터링된 도시 측정항목 Explore로 리디렉션됩니다.

다음 예에서 설명한 대로 Looker 콘텐츠에 연결할 때 기존 필터 값을 유지할 수도 있습니다.
예: 연결된 콘텐츠에 기존 필터 값 전달
link 매개변수에서 지원하는 또 다른 Liquid 변수는 _filters['view_name.field_name']입니다. 이 변수는 필드에 입력된 기존 값을 가져와서 연결된 Explore, 대시보드 또는 Look에 전달합니다.
콘텐츠 URL에서 필터 값이 지정된 위치를 확인하고 _filters['view_name.field_name'] 변수로 바꿀 수 있습니다. 쿼리 URL의 부분에 대한 자세한 내용은 URL 및 쿼리 매개변수 사용 Looker 커뮤니티 게시물을 참고하세요.
다음은 link 매개변수에서 _filters['view_name.field_name'] 변수를 사용하여 users.state라는 필드의 기존 필터 값을 전달하는 측정기준의 예입니다.
dimension: name {
link: {
label: "Business Pulse By State Dashboard"
url: "/dashboards/694?State={{ _filters['users.state'] | url_encode }}"
}
}
이 예에서 사용자가 users.state 측정기준으로 쿼리를 필터링하면 연결된 대시보드가 원래 쿼리에서 선택한 동일한 주로 자동 필터링됩니다. 이 예에서 Liquid 필터 url_encode를 포함하면 URL에 안전하지 않은 문자열이 퍼센트 인코딩된 문자열로 변환됩니다. 이렇게 하면 공백이나 쉼표와 같은 특수문자가 포함된 필터 값을 연결된 대시보드에 전달할 수 있습니다.
예를 들어 사용자가 '캘리포니아' 주로 쿼리를 필터링했다고 가정해 보겠습니다. 사용자가 이름 필드의 값 옆에 있는 점 3개로 된 메뉴를 클릭하면 링크 메뉴에 대시보드 주별 비즈니스 현황 에 대한 링크가 표시됩니다. 사용자가 이 링크를 클릭하면 주별 비즈니스 현황 대시보드가 이미 '캘리포니아' 주로 필터링됩니다.
이 방법은 연결된 Look 및 Explore에 필터 값을 전달하는 데도 사용할 수 있습니다.
dimension: name {
link: {
label: "Average Order Profit Look"
url: "/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}"
}
link: {
label: "User Facts Explore Explore"
url: "/explore/ecommerce/users?fields=users.id,users.name&f[users.state]={{ _filters['users.state'] | url_encode }}"
}
}
다음 URL과 같이 필터 사이에 &를 배치하여 여러 필터를 전달할 수 있습니다.
dimension: name {
link: {
label: "Business Pulse By State Dashboard"
url: "/dashboards/694?State={{ _filters['users.state'] | url_encode }}&Date={{ _filters['orders.date'] | url_encode }}"
}
link: {
label: "Average Order Profit Look"
url: "/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}&f[orders.date]={{ _filters['orders.date'] | url_encode }}"
}
}
대시보드 필터 생성에 대한 자세한 내용은 LookML 대시보드 빌드 및 사용자 정의 대시보드 필터 추가 및 수정 문서 페이지를 참고하세요.
예: link를 사용하여 드릴 시각화 맞춤설정
Looker 관리자가 시각적 드릴 기능을 사용 설정한 경우 link 매개변수와 Liquid 변수를 사용하여 Explore 및 Look의 드릴 오버레이에 표시되는 시각화를 맞춤설정할 수 있습니다. 대시보드는 시각적 드릴 기능을 사용 설정하지 않고도 link 매개변수를 사용하여 시각적 드릴을 지원합니다.
다음은 드릴 시각화를 산점도 차트로 설정하는 예입니다.
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"
}
}
드릴 시각화 맞춤설정의 더 많은 예는 더 강력한 데이터 드릴링 권장사항 페이지를 참고하세요.
Looker 콘텐츠에 연결할 때 고려할 사항
같음 외에 필터 비교 연산자를 포함하거나, 여러 필터를 포함하거나, Looker 콘텐츠에 연결할 때 쉼표를 이스케이프 처리해야 하는 경우가 있을 수 있습니다. 다음 섹션에서는 이러한 사용 사례에 대해 자세히 설명합니다.
다른 비교 연산자 URL 인코딩
연결된 필터에 같음 (=) 외에 비교 연산자를 포함하려면 연산자를 URL 인코딩하면 됩니다.
예를 들어 연결된 Look의 order_id 필터에 클릭하는 값과 연결된 order_id 필드보다 작은 (<) 값이 포함되도록 하려면 연산자 문자 (이 경우 %3C)를 부분적으로 인코딩하고 URL에 추가하면 됩니다.
f[orders.order_id]=%3C{{ other_orders.order_id._value }}
여러 필터 포함
앰퍼샌드 (&)를 사용하여 각 필터를 구분하면 연결된 Look, 대시보드, Explore에 둘 이상의 필터를 적용할 수 있습니다.
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 }}"
}
}
쉼표 이스케이프 처리
연결된 값에서 일반적으로 value 변수를 사용하는 경우 filterable_value 변수를 사용하여 쉼표를 이스케이프 처리할 수 있습니다.
다음 링크는 선택한 users.city 값으로 결과를 필터링하는 Explore로 드릴합니다.
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 }}"
}
}
사용자가 Santa Cruz, CA 를 클릭하여 이 도시로 필터링된 결과를 드릴하면 결과 드릴은 Santa Cruz 또는 CA 를 포함하는 모든 결과를 반환합니다.
value 대신 filterable_value를 사용하면 쉼표가 이스케이프 처리됩니다.
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 }}"
}
}
결과 드릴은 전체 문자열 값 Santa Cruz, CA 를 포함하는 모든 결과를 반환합니다.
드릴 URL에 쉼표가 포함된 필터 값을 하드 코딩하려면 값을 큰따옴표로 묶은 다음 백슬래시 (\)로 이스케이프 처리하여 쉼표를 이스케이프 처리하면 됩니다.
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"
}
}
추가 리소스
- 더 고급 맞춤 드릴 예는 더 강력한 데이터 드릴링 권장사항 페이지를 참고하세요.
- 링크에서
{{ value }}사용에 대한 더 많은 예는 Liquid 변수 문서 페이지를 참고하세요.
알아 두어야 할 사항
측정기준에 다른 필드를 참조하는 link 매개변수가 포함되어 있으면 해당 추가 필드가 측정기준이 사용되는 쿼리의 기본 SQL에 추가될 수 있습니다. 참조된 필드가 쿼리의 시각화에 없고 시각화가 수동으로 재정렬된 열이 있는 표 차트인 경우 일부 다운로드된 형식의 열 순서가 영향을 받을 수 있습니다.