2010-12-02 17 views
1

以前はプロジェクトでバルクローダーの使用に成功しましたが、最近、レコードが変更されたときにタイムスタンプに新しいフィールドを追加しました。しかし、この新しいフィールドは、デフォルトでnullになっているので、私に問題を起こしています。それをインポートする前に手動でタイムスタンプをcsvに挿入する手間はありませんが、現在の正しいデータを挿入する方法はありますか?私はimport_transformラインを見なければならないと思うが、私はPythonについては何も知らない(私のアプリはJavaにある)。Google App Engine Bulkloaderでデフォルト値を生成する

理想的には、現在のタイムスタンプ(エポックからのミリ秒)を自動的に挿入したいと考えています。それが自明でない場合は、インポートを実行する前にtransformステートメントで静的に値を設定してください。ありがとう。

+1

私は解決策を見つけましたが、それは明らかに良いものではありません。だから私は答えの代わりにコメントとして投稿します。私はtransform.pyを見つけて、none_if_emptyに基づいて独自の関数を追加しました。 noneの代わりにint(time.time()* 1000)を返します。おそらくそれほど醜いわけではないかもしれませんが、私はおそらくgoogleのtransform.py – ASTX813

答えて

1

カスタム変換関数を定義するのは正しい方法です。あなたはtransform.pyを修正する必要はありませんが、関数を自分のアプリケーションのファイルに入れて、yamlファイルのpython_preambleにインポートします。