בדף הזה אנחנו מתייחסים לפרמטר
extendsשהוא חלק מתצוגה.אפשר להשתמש ב-
extendsגם כחלק מניתוח, כמו שמתואר בדף התיעוד של הפרמטרextends(לניתוחים).
extendsאפשר להשתמש גם כחלק מלוח בקרה של LookML, כמו שמתואר בדף התיעוד פרמטרים של לוח בקרה.
Usage
view: view_name {
extends: [view_name, view_name, ...]
}
|
היררכיה
extends |
ערך ברירת המחדל
ללא
מקבל
סוגריים מרובעים שמכילים רשימה מופרדת בפסיקים של שמות תצוגות
|
הגדרה
הפרמטר extends מאפשר לכם להסתמך על התוכן וההגדרות מקובץ תצוגה מפורטת אחר, ולהשתמש בקובץ התצוגה המפורטת האחר כנקודת התחלה. אם יש התנגשויות, התצוגה המורחבת תשתמש בהגדרות שלה, ותבטל את ההגדרות של התצוגה שהורחבה. במאמר שימוש חוזר בקוד באמצעות extends מוסבר איך Looker עושה את זה.
כאן אפשר לקרוא על שיפורים ב-LookML.
הארכה של תצוגה או של ניתוח ב-Explore מתאימה לתרחישים שבהם רוצים ליצור כמה גרסאות של התצוגה או של הניתוח. אבל אם המטרה שלכם היא פשוט לשנות תצוגה או ניתוח ב-Explore בלי לערוך את קובץ ה-LookML שמכיל אותם, כדאי להשתמש במקום זאת בשיפור. אפשר גם להשתמש בפרמטרextendsבתוך מסנן. מידע נוסף ותרחישי שימוש מופיעים בדף התיעוד בנושא שיפורים ב-LookML.
כשמרחיבים תצוגה מפורטת, חשוב להשתמש בפרמטר sql_table_name בתצוגה המפורטת שרוצים להרחיב, אם הוא עדיין לא מופיע בה. הפרמטר sql_table_name מגדיר את הטבלה במסד הנתונים שיופעל עליה שאילתה על ידי תצוגה. ערך ברירת המחדל לכל תצוגה הוא השם של התצוגה. לכן, אם אתם לא משתמשים כבר ב-sql_table_name, פשוט תתנו לו את אותו ערך כמו שם התצוגה.
חשוב גם שבקובץ התצוגה החדש נשתמש בפרמטר include כדי להפנות לשם הקובץ של התצוגה שאנחנו רוצים להרחיב.
מומלץ להימנע מהרחבת תצוגות שמבוססות על טבלאות נגזרות מתמידות (PDT). כל הרחבה של PDT תיצור עותק חדש של הטבלה במסד הנתונים. במקרה כזה, כדאי להשתמש בשיפורים של LookML. מידע נוסף ותרחישי שימוש מופיעים בדף התיעוד בנושא שיפורים ב-LookML.
דוגמה
דוגמה לקובץ תצוגה שאפשר להרחיב. התצוגה נקראת looker_events ושם הקובץ של התצוגה הוא events.view.
קובץ: events.view
view: looker_events {
sql_table_name: looker_db.events ;;
# The normal contents of the view follow
}
עכשיו ניצור קובץ תצוגה חדש ונגדיר תצוגה שמרחיבה את התצוגה looker_events. בקובץ החדש, צריך להשתמש בפרמטר include כדי להפנות לשם הקובץ של התצוגה שרוצים להרחיב:
קובץ: new_events.view
include: "events.view"
view: name_of_the_new_view {
extends: [looker_events]
measure: additional_measure {
type: count
}
# Additional things you want to add or change
}
בנוסף, הוספנו מדד חדש שיוצג בתצוגה החדשה שלנו, לצד כל המאפיינים והמדדים שמוגדרים בתצוגה looker_events שהרחבנו.
שימוש במטא-נתונים כדי לראות הרחבות של אובייקט
אפשר ללחוץ על פרמטר explore או view ב-Looker IDE ולהשתמש בחלונית המטא-נתונים כדי לראות אילו תוספים יש לאובייקט, או כדי לראות איזה אובייקט הוא מרחיב. מידע נוסף זמין בדף התיעוד בנושא מטא-נתונים של אובייקטים ב-LookML.
דברים שכדאי לקחת בחשבון
חלק מהפרמטרים הם מצטברים
במקרים רבים, אם האובייקט המרחיב מכיל את אותו פרמטר כמו האובייקט המורחב, הערכים של האובייקט המרחיב יחליפו את ערכי הפרמטר של האובייקט המורחב.
אבל התוספים יכולים להיות מצטברים עבור חלק מהפרמטרים, כלומר הערכים מהאובייקט המרחיב משמשים בשילוב עם הערכים מהאובייקט המורחב.
הפרמטרים הבאים הם תוספתיים:
למאפיינים ולמדדים:
לצפיות:
extends(אפשר לשרשר כמהextends)
בדוגמה הבאה, לתצוגה המפורטת carriers יש מאפיין name עם פרמטר link:
view: carriers {
sql_table_name: flightstats.carriers ;;
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Google {{ value }}"
url: "http://www.google.com/search?q={{ value }}"
icon_url: "http://google.com/favicon.ico"
}
}
}
זו תצוגת carriers_extended, שהיא הרחבה של תצוגת carriers. בתצוגה carriers_extended יש גם מימד name עם הגדרות שונות בפרמטר link:
include: "/views/carriers.view.lkml"
view: carriers_extended {
extends: [carriers]
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Dashboard for {{ value }}"
url: "https://docsexamples.dev.looker.com/dashboards/307?Carrier={{ value }}"
icon_url: "https://www.looker.com/favicon.ico"
}
}
}
בתצוגה המפורטת carriers_extended, שני הפרמטרים link מצטברים, ולכן המאפיין name יכלול את שני הקישורים.

פרויקטים עם התאמה לשוק המקומי
כשמרחיבים אובייקט, חשוב לזכור שכללי הלוקליזציה חלים גם על ההרחבות. אם מרחיבים אובייקט ואז מגדירים תוויות או תיאורים חדשים, צריך לספק הגדרות לוקליזציה בקבצים של מחרוזות הלוקאל בפרויקט. מידע נוסף זמין בדף העזרה בנושא התאמה לשפה המקומית של מודל LookML.