1
我正在使用Google Appengine和Python製作Udacity的網絡開發課程。在創作過程中爲作者分配作者
我想知道如何分配給創建實體,它自己的作者。
例如,我有兩個ndb.Models種:
class User(ndb.Model):
username = ndb.StringProperty(required = True)
bio = ndb.TextProperty(required = True)
password = ndb.StringProperty(required = True)
email = ndb.StringProperty()
created = ndb.DateTimeProperty(auto_now_add = True)
class Blog(ndb.Model):
title = ndb.StringProperty(required = True)
body = ndb.TextProperty(required = True)
created = ndb.DateTimeProperty(auto_now_add = True)
當通過登錄的用戶,其自身的作者(用戶實體)也應確定創建博客實體用它。
最後,我想顯示一個博客的帖子及其作者的信息(例如,作者的生物)
如何才能實現這一目標?
謝謝@Josh。我想我已經明白了!後續問題:是否將作者存儲爲_KeyProperty_的最佳方式?在這種情況下,通過_StringProperty_使用_KeyProperty_的優點是什麼? – puoyaahhh
如果您希望作者的名稱能夠更改,您將需要使用「KeyProperty」。你可以用'author = blog.author.get()'獲取作者,然後用'author.username'獲取用戶名 - 如果你想壓縮到一行,你有'blog.author.get().user'' ,但你最好想保留作者參考。 – Josh
我剛剛遇到'ReferenceProperty'屬性,它看起來與此處所述的解決方案非常相似。在這種情況下,是否有任何理由在ReferenceProperty上使用KeyProperty? – puoyaahhh