如何在 google-app-engine 上的 db.ListProperty 中引用某些模型
这是我的模型:
class Geo(db.Model):
entry = db.ListProperty(db.Key)
geo=Geo()
geo.entry.append(otherModel.key())
html是:
{% for i in geo.entry %}
<p><a href="{{ i.link }}">{{ i.title }}</a></p>
{% endfor%}
但它什么也没显示,
我想也许应该:
class Geo(db.Model):
entry = db.ListProperty(db.Model)
geo=Geo()
geo.entry.append(otherModel)
但它显示:
ValueError: Item type Model is not acceptable
所以,如何使html显示正确的东西。
谢谢
this is my model:
class Geo(db.Model):
entry = db.ListProperty(db.Key)
geo=Geo()
geo.entry.append(otherModel.key())
and the html is :
{% for i in geo.entry %}
<p><a href="{{ i.link }}">{{ i.title }}</a></p>
{% endfor%}
but it show nothing,
i think maybe should :
class Geo(db.Model):
entry = db.ListProperty(db.Model)
geo=Geo()
geo.entry.append(otherModel)
but it show :
ValueError: Item type Model is not acceptable
so , how to make the html shows the right thing.
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不能使用该模板(或类似的模板)直接显示模型,但您可以通过简单地在键列表上调用
db.get
来轻松准备具有模型列表的上下文 -例如,在上下文字典的开头添加{'entries': db.get(listofkeys), ...
,并在模板中添加for i in items
。You can't use that template (or the like) to show the model directly, but you can easily prepare a context with a list of models by simply calling
db.get
on the list of keys -- e.g., have{'entries': db.get(listofkeys), ...
at the start of your context dictionary, andfor i in entries
in the template.