링크

용도

view: view_name {
dimension: field_name {
link: {
label: "원하는 라벨 이름"
url: "want_url"
icon_url :

계층 구조
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에서 유동 변수 사용 섹션에 설명된 대로 유동 변수를 사용하여 연결을 동적으로 만들 수 있습니다.
  • icon_url는 URL로, 사용자의 브라우저에서 액세스할 수 있으며 이미지 파일을 포함합니다. 이렇게 하면 사용자가 링크를 클릭하면 어디로 연결되는지 한눈에 쉽게 파악할 수 있습니다. 아이콘을 사용하지 않으려면 icon_url 매개변수가 필요하지 않습니다. 기업 로고가 필요한 경우 http://www.google.com/s2/favicons?domain=[company website of interest] 패턴으로 Google 검색을 실행하여 .ico 형식의 이미지를 찾아보세요.

전자상거래 회사는 직원이 Looker 콘텐츠에서 지난달의 대기 중인 주문을 표시하는 Look과 같이 창고 지원팀에 직접 연락할 수 있기를 원합니다. Look에는 주문 ID와 각 주문과 연결된 고객의 사용자 ID가 포함됩니다.

주문 ID 측정기준에 대한 링크를 추가하여 Look을 확인하는 사용자에게 이 작업을 제공할 수 있습니다.


dimension: id {
  primary_key: yes
  type: number
  sql: ${TABLE}.id ;;
  link: {
    label: "Contact Warehouse Support"
    url: "mailto:warehouse@brettcase.com"
  }
}

사용자는 점 3개로 된 메뉴를 클릭하여 액세스하는 링크 메뉴의 옵션 사이에 링크를 표시합니다.

링크 이름을 클릭하면 사용자는 연결된 콘텐츠로 이동합니다. 이 경우 지정된 이메일 주소로 주소가 지정된 빈 이메일 초안이 있는 새 탭이 표시됩니다.

위의 예에는 sql 매개변수가 포함되어 있습니다. sql를 지정하지 않은 경우 Looker는 기본 테이블에 필드와 이름이 같은 열이 있다고 가정합니다.

사용자가 링크를 클릭하면 Looker는 새 브라우저 탭 또는 동일한 탭 (삽입된 쿼리의 경우 iframe)에서 링크를 엽니다.

  • https://example.looker.com 등의 절대 링크가 새 브라우저 탭에서 열립니다.
  • /dashboards/456 등의 상대 링크는 동일한 브라우저 탭 또는 iframe에서 열립니다. 링크가 열리면 브라우저에서 뒤로를 클릭하여 원래 검색어로 돌아갈 수 있습니다.

사용자가 링크에 액세스하려면 explore 또는 see_drill_overlay 권한이 있어야 합니다.

link 매개변수는 Liquid 변수를 지원하여 행 및 값 수준에 이르기까지 상호작용 가능한 콘텐츠를 만듭니다. LookML은 값 입력 {{ }} 태그와 조건부 로직 {% %} 태그, 두 가지 종류의 유동 사용 태그를 지원합니다.

이 중 {{ }}value, _filters['view_name.field_name'] 유동 변수link와 함께 가장 많이 사용됩니다. 이는 {{ }}가 URL 내에서와 같이 입력 위치에 직접 값을 태그하기 때문입니다.

link와 상호작용하기 위해 value_filters['view_name.field_name'] 변수와 함께 Liquid {{ }} 태그를 사용하는 예는 이 페이지의 예를 참고하세요.

외부 콘텐츠에 연결

예를 들어 artist_name 측정기준이 있고 사용자가 Looker에서 바로 해당 아티스트의 Google 검색을 실행하는 옵션을 제공한다고 가정해 보겠습니다. value 유동 변수를 사용하여 이 옵션을 다음과 같은 측정기준에 추가할 수 있습니다.

dimension: artist_name {
  link: {
    label: "Google"
    url: "http://www.google.com/search?q={{ value }}"
    icon_url: "http://google.com/favicon.ico"
  }
}

이 측정기준 링크의 사용자 환경은 다음과 같습니다.

링크를 클릭하면 선택한 아티스트에 대한 Google 검색으로 연결되는 새 브라우저 탭이 열립니다. 선택한 아티스트 이름은 {{ value }}가 배치된 URL에 삽입됩니다.

이 패턴은 티켓 관리 시스템, 클라이언트 관리 시스템 및 기타 비즈니스 관련 도구와 같이 사용자의 브라우저에서 액세스할 수 있는 다른 외부 웹사이트에 대해 복제되어 웹 애플리케이션 간에 쉽게 탐색할 수 있습니다.

Looker의 콘텐츠에 연결

외부 사이트 외에도 link 매개변수를 사용하여 맞춤 드릴링 환경을 위해 다른 관련 Looker Explore, Look 또는 대시보드로 사용자를 연결할 수 있습니다. 필드의 LookML html 매개변수 링크에도 동일한 예시를 적용할 수 있습니다.

시작하려면 연결하려는 기존 탐색, 보기 또는 대시보드의 URL을 확보해야 합니다. 그런 다음 필터 값 및 이름과 같은 URL의 특정 요소를 value_filters['view_name.field_name'] 변수가 포함된 {{ }} 태그로 대체할 수 있습니다. 변수는 사용자가 선택한 값을 대체하는 URL 요소에 입력합니다. 콘텐츠 URL의 기본 구조는 다음과 같습니다.

  • 탐색: https://instance_name.looker.com/explore/YOUR_MODEL_NAME/YOUR_EXPLORE_NAME?fields=view_name.field_name1,view_name.field_name2...
    • 확장 URL 톱니바퀴 아이콘 옵션을 선택하면 기존 탐색 분석의 탐색 URL을 확인할 수 있습니다.
    • 탐색 필터는 URL에 f[view_name.field_name](으)로 표시됩니다. 예를 보려면 관련 탐색 링크 섹션을 참고하세요.
  • 보기: https://instance_name.looker.com/Looks/YOUR_LOOK_NUMBER
  • 사용자 정의 대시보드: https://instance_name.looker.com/dashboards/YOUR_DASHBOARD_NUMBER?FILTER_NAME_1=VALUE&FILTER_NAME_2=VALUE
    • 대시보드 페이지에서 브라우저 URL을 복사하여 기존 대시보드의 URL을 가져올 수 있습니다.
    • 기존 대시보드를 사용하는 경우 URL에 dashboards 대신 URL이 dashboards-legacy로 사용됩니다.
  • LookML 대시보드: https://instance_name.looker.com/dashboards/YOUR_MODEL::YOUR_DASHBOARD
    • 대시보드 페이지에서 브라우저 URL을 복사하여 기존 LookML 대시보드의 URL을 가져올 수 있습니다.

사용자 정의 대시보드와 LookML 대시보드의 대시보드 필터는 filter_name에 URL로 표시됩니다. 여기서 filter_name은 대시보드에 배치된 필터에 지정된 이름입니다. 예를 보려면 연결된 콘텐츠에 기존 필터 값을 전달 섹션을 참조하세요.

필터 값 및 이름과 같은 URL 요소는 특수문자(예: 쿼리 문자열의 시작을 나타내는 ?, 요소를 구분하는 &, 공백으로 %20)를 사용하여 URL로 인코딩됩니다. 예는 다른 비교 연산자의 URL 인코딩 섹션을 참고하세요.

연결하려는 콘텐츠의 URL이 있는 경우 Liquid에서 value 또는 _filters['view_name.field_name'] 변수와 {{ }} 태그를 사용해 URL의 모든 요소에 필드 값을 삽입할 수 있습니다. 쿼리 URL 요소에 대한 자세한 내용은 URL 및 쿼리 매개변수 사용을 참고하세요.

도시라는 측정기준이 있습니다. 사용자가 도시 측정항목과 도시 필터를 사용하여 다른 기존 탐색 분석에 액세스할 수 있기를 바랍니다. 연결된 탐색이 사용자가 선택한 도시로 필터링되기를 원합니다.

이렇게 하려면 다음과 같은 조치가 필요합니다.

  1. 드릴다운할 기존 탐색의 URL을 가져옵니다.
  2. link 매개변수를 도시 측정기준에 추가합니다.
  dimension: city {
  type: string
  sql: ${TABLE}.city ;;
  link: {
    label: "City Metrics Explore"
    url: "https://instance_name.looker.com/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]=&sorts=orders.count+desc&limit=500"
  }
  }

여기에서 URL은 limit=500로 단축되어 탐색 결과가 500개로 제한됩니다. 필요한 경우 일반적으로 시각화 설정의 URL 인코딩을 포함하는 나머지 URL을 포함할 수 있습니다.

  1. URL에 값을 삽입하려는 위치에 Liquid {{ value }} 태그와 변수를 삽입합니다. 이 경우에는 사용자가 선택한 도시를 기준으로 필터링할 필터링 문자열 f[users.city]=가 위치한 위치의 URL 문자열에 값을 입력합니다.
dimension: city {
  type: string
  sql: ${TABLE}.city ;;
  link: {
    label: "City Metrics Explore"
    url: "https://instance_name.looker.com/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]={{ value }}&sorts=orders.count+desc&limit=500"
  }
}

그러면 도시 측정기준에 도시 측정항목 탐색 옵션이 표시된 점 3개로 된 링크 메뉴가 표시됩니다.

사용자가 링크를 클릭하면 선택한 도시를 기준으로 필터링되는 도시 측정항목 살펴보기로 리디렉션됩니다.

다음 예에서 설명하는 것처럼 Looker 콘텐츠에 연결할 때 기존 필터 값을 유지할 수도 있습니다.

예: 연결된 콘텐츠에 기존 필터 값 전달

link 매개변수에서 지원하는 또 다른 Liquid 변수는 _filters['view_name.field_name']입니다. 이 변수는 필터에 입력된 기존 값을 가져와 연결된 탐색, 대시보드 또는 Look에 전달합니다.

대시보드에서 필터를 전달하는 경우 _filters['view_name.field_name']대시보드 LookML 또는 기존 대시보드 사용자 인터페이스에 설정된 대로 필드 유형 필터를 참조해야 합니다.

콘텐츠 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: "https://instance_name.looker.com/dashboards/694?State={{ _filters['users.state'] | url_encode }}"
  }
}

이 예에서 사용자가 users.state 측정기준으로 쿼리를 필터링하면 연결된 대시보드가 원래 쿼리에서 선택한 상태와 동일한 상태로 자동 필터링됩니다. 이 예시에 액체 필터 url_encode를 포함하면 URL에서 안전하지 않은 문자열이 퍼센트 인코딩 문자열로 변환됩니다. 이렇게 하면 공백 또는 쉼표와 같은 특수문자가 포함된 필터 값이 연결된 대시보드에 전달될 수 있습니다.

다음 예에서는 사용자가 '캘리포니아' 주를 기준으로 쿼리를 필터링했습니다. 이 링크를 클릭하면 이미 캘리포니아 주에서 필터링된 대시보드가 열립니다.

이는 연결된 Looks 및 Explore에 필터 값을 전달하는 경우에도 작동합니다.

dimension: name {
    link: {
      label: "Average Order Profit Look"
      url: "https://instance_name.looker.com/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}"
    }
    link: {
      label: "User Facts Explore Explore"
      url: "https://instance_name.looker.com/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: "https://instance_name.looker.com/dashboards/694?State={{ _filters['users.state'] | url_encode }}&Date={{ _filters['orders.date'] | url_encode }}"
  }
  link: {
    label: "Average Order Profit Look"
    url: "https://instance_name.looker.com/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}&f[orders.date]={{ _filters['orders.date'] | url_encode }}"
  }
}

대시보드 및 디자인에 연결: 연결된 필터나 스타일을 지정된 필터 값을 허용할 수 있는 필터로 구성해야 합니다. 위의 예에서 연결된 주별 비즈니스 동향 대시보드는 users.state라는 상태(예: 상태)로 구성되어 있으므로 _filters['users.state'] 필터 값을 대시보드에 전달할 수 있습니다. 대시보드나 Look에 전달된 값을 사용할 수 있는 필터가 없는 경우 링크는 계속 작동하지만 필터 값은 대시보드에 적용되지 않습니다.

대시보드 필터 만들기에 대한 자세한 내용은 LookML 대시보드 빌드사용자 정의 대시보드 필터 추가 및 수정 문서 페이지를 참조하세요.

Looker 관리자가 시각적 드릴링 실험실 기능을 사용 설정한 경우 link 매개변수 및 Liquid 변수를 사용하여 탐색 분석, 스타일, 기존 대시보드의 드릴 오버레이에 표시되는 시각화를 맞춤설정할 수 있습니다. 새로운 대시보드 환경에서는 시각적 드릴링 실험실 기능을 사용 설정하지 않고도 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 필드 미만 (<)이 포함되도록 하려면 연산자 문자 (이 경우 %3E)를 부분적으로 인코딩하여 URL에 추가합니다.

f[orders.order_id]=%3E{{ other_orders.order_id._value }}
여러 필터 포함

각 필터를 구분하려면 앰퍼샌드 (&)를 사용하여 연결된 스타일, 대시보드, 탐색 분석에 둘 이상의 필터를 적용할 수 있습니다.

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 값으로 결과를 필터링하는 탐색으로 드릴다운됩니다.

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 }}"
    }
}

사용자가 캘리포니아주 산타크루즈를 클릭하여 도시를 기준으로 필터링한 결과를 검색하면 산타크루즈 또는 캐나다가 포함된 모든 결과가 반환됩니다.

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 }}"
    }
}

결과 드릴은 전체 문자열 값 산타크루스, 캘리포니아를 포함하는 모든 결과를 반환합니다.

드릴 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 }}를 사용하는 예를 더 보려면 유동 변수 문서 페이지를 참고하세요.