尝试在Google App Engine上使用Python中的“get_or_insert”匹配记录和用户。
使用下面的模型,我想检查一个用户是否有已创建的图书的记录(在BookUser中列出),如果他们在BookUser中有记录,则获取它的详细信息。如果他们不使用XX数据创建它并将其与书籍和用户相关联。
class User(db.Model):
id = db.StringProperty()
name = db.StringProperty()
image = db.BlobProperty(default=None)
class Book(db.Model):
image = db.BlobProperty()
date_added = db.DateTimeProperty(auto_now_add=True)
is_active = db.BooleanProperty(default=True)
class BookUser(db.Model):
book = db.ReferenceProperty(Book)
user = db.ReferenceProperty(User)
is_active = db.BooleanProperty(default=True)
我仍然围绕着App Engine,钥匙等等。 任何帮助都会很棒,欣赏它。
d
答案 0 :(得分:1)
您可以将BookUser实体的键设置为User和Book键的组合,这将为您提供一种使关系独特的非常简单的方法。
bookuser_key_name = "%s:%s" % (str(book_key.id_or_name()), str(user_key.id_or_name()))
bookuser = BookUser.get_or_insert(bookuser_key_name)
# set your values...
bookuser.put()