GAEOのモデルにプロパティを追加する

Google App Engine Oilで簡単なブックマークアプリを作成しましたが、今回はdatastoreに登録日時の項目(プロパティ)を追加してみます。

モデルを定義しているファイルは、myapp\application\modelフォルダに入っています。
ここでは、bookmarks.py を変更して day という登録日時の項目を追加してみましょう。

from google.appengine.ext import db
from gaeo.model import BaseModel, SearchableBaseModel

class Bookmarks(BaseModel):
    title = db.StringProperty(required=True)
    url = db.StringProperty(required=True)
    day = db.DateTimeProperty(auto_now_add = True)  #この行を追加します


登録日時なので、DateTimePropertyにします。auto_now_add = Trueを指定するとエンティティ登録時に自動で登録日時が入ります。(日時はUTCになります)
エンティティの更新日時を入れておきたい場合は、auto_now = Trueを指定します。

これで画面から1件データを登録した後、datastore viewerを確認すると・・

f:id:ramtiga:20100316214807p:image


新しいエンティティにのみ、登録日時が入りました。