我有以下模型,其中不同的文本被标记到不同的文本集合中,每个文本可以有多个版本,但只有一个“活动”版本:
class Collection(db.Model):
name = db.StringProperty()
...
class Text(db.Model):
title = db.StringProperty(default="Untitled")
...
class Version(db.Model):
text = db.ReferenceProperty(Text, collection_name="versions")
content = db.TextProperty()
active = db.BooleanProperty(default=True)
...
class Tag(db.Model):
collection = db.ReferenceProperty(Collection, collection_name="c_tags")
text = db.ReferenceProperty(Text, collection_name="t_tags")
现在我想在一个集合中显示所有“活动”文本:
class ViewCollection(webapp.RequestHandler):
def(get):
collection = Collection.get(self.request.get("key"))
# grabs the collection to display
tags = collection.t_tags
# grabs all the tags linking a text and a collection
texts = [t.text for t in tags]
这将为我提供所有文本的列表,因此我可以轻松打印所有文本标题t.title for t in texts
(
或者这种跨不同模型类的过滤是不可能的?