[Looker]aliasパラメータを使ってフィールド名を変更した時のコンテンツのエラーを防いでみる #looker
さがらです。
Lookerでは「model・viewファイル」と「Look・Dashboard」は別々で定義されているため、viewファイル上でフィールド名を変更すると、Look・Dashboardで参照すべきフィールド名が一致せずエラーが発生してしまいます。
このフィールド名変更時のエラーを解消するには、基本的にはContent Validatorを使うしかありません。 (詳細はこちらのブログを)
しかし、Content Validatorを使用せずとも、フィールド名を変更したときにLook・Dashboardがエラーを起こさない方法として、aliasというパラメータを使用する方法もあります。
今回はこのaliasパラメータを試してみたので、その内容をまとめてみます。
aliasを試してみる
前提条件
status
というdimensionを定義していて、下図のようなLookを定義していたとします。
ここで、status
という名称からstatus_new
という名称に変更してみます。
すると、元々作成していたLookはフィールド名を正しく参照できなくなり、エラーを起こすようになります。
aliasを使って解決する
ここで、alias
の出番です!
使い方はとても簡単、フィールド名を変更したフィールド内でalias: [元のフィールド名]
と書くだけです!
これにより、status_new
はstatus
という名称でも参照できるようになるため、作成したLookはエラーを起こさないようになります。
aliasを使う上での注意点
この説明を聞くと、「Content Validatorいらないじゃん!」と思う方もいるかもしれませんが、1つ注意しないといけないことがあります。
それは、当たり前かもしれませんがaliasで指定したフィールド名は、その名前を使って別のフィールドとしてExploreで使用することができないことです。
具体例を見てみたいと思います。
例えば、下図のようにaliasで指定したフィールド名を使って別のフィールドを定義していたとします。
この状態で、aliasで指定したフィールド名と同じであるstatus
を選択すると…なんとstatus_new
の方が選択されてしまいます。
このため、aliasで指定したフィールド名は他のフィールド名に使えないことに注意しましょう!
最後に
注意すべき点はありますが、Content Validatorよりお手軽に使えるので、「コンテンツに対して一時でもエラーを起こさずにフィールド名を変更したい」場合には使える機能ではないでしょうか。
フィールド名の修正の際は、Content Validatorと合わせて検討してみてください!