星期二, 3月 23, 2010

google app 資料庫使用

word = Word()   #取得Word物件
word.content ="good"
word.frequency=1
word.put()   #形成實體


# word.key() ,取得word 物件金鑰
obj = db.get(word.key())
#db.get() ,使用金鑰取得物件
print obj.content


# 由金鑰取出物件, key : agd3b3JkbWVtcgoLEgRXb3JkGAIM
key="agd3b3JkbWVtcgoLEgRXb3JkGAIM"
obj = db.get(key)
#obj 即為該物件。

範例二:

from google.appengine.ext import db

class Word(db.Model):
  author = db.UserProperty()
  content = db.StringProperty()
  frequency = db.IntegerProperty()
  keywords = db.StringListProperty()
  date = db.DateTimeProperty(auto_now_add=True)

class Tag(db.Model):
    name = db.StringProperty()
    members = db.StringListProperty()
#建立第一個字
word = Word()
word.content ="good"
word.frequency=1
word.put()
#建立 Tag:movie
tag =Tag()
tag.name = "movie"
#把word的金鑰轉成 string 存入 members
tag.members.append(str(word.key()))
tag.put()






# 取出 tag
q = Tag.all()
q.filter("name =", "movie")
results = q.fetch(1)
#取出其中一個 member
key_name = results[0].members[0]
#使用 db.key() 將 string 的金鑰轉成 key 物件,
#使用db.get()取出物件
obj = db.get(db.Key(key_name))

print obj.content

沒有留言: