Redashでpythonをデータソースとして使っていて、ちょっとハマったので残しておきます。
環境
- Redash 7.0.0
- python 2.7
関数内で標準ライブラリが使えない
以下のように、先頭でimportしたdatetime
ライブラリをhoge
関数の中で使いたかったのですが、
import datetime
def hoge():
print(datetime.datetime.now())
hoge()
↓ Executeしたらエラーが発生しました。(!?)
Error running query: <type 'exceptions.NameError'> global name 'datetime' is not defined
解決
関数内でimportしたら動作しました。
def hoge():
import datetime
print(datetime.datetime.now())
hoge()
# -> [2020-02-12T09:59:05.617825] 2020-02-12 09:59:05.617767