我在 App Engine 中创建了一个博客,我目前正在为博客文章添加评论支持。我已经制作了一个 db.ListProperty(db.Key) 来为发布到该特定帖子的每条评论存储一个密钥。
问题是,我试图在我的模板中执行此操作,但我不能在那里使用 db.get。
例如,能够从 jinja 执行类似“Comment.get(key)”的操作
您是否有任何其他解决方案如何在我的模板中执行此操作,或者我是否必须将列出我的博客文章的 for 函数从我的模板中移开并将其作为 kwarg 传递?
谢谢
我在 App Engine 中创建了一个博客,我目前正在为博客文章添加评论支持。我已经制作了一个 db.ListProperty(db.Key) 来为发布到该特定帖子的每条评论存储一个密钥。
问题是,我试图在我的模板中执行此操作,但我不能在那里使用 db.get。
例如,能够从 jinja 执行类似“Comment.get(key)”的操作
您是否有任何其他解决方案如何在我的模板中执行此操作,或者我是否必须将列出我的博客文章的 for 函数从我的模板中移开并将其作为 kwarg 传递?
谢谢
花了一段时间,需要重新思考,但我修好了。我将它从模板中移开并制作了一个获取评论功能,该函数将获取的帖子作为输入并输出评论列表。然后我只是把它作为一个 kwarg ofc 传递。看起来像这样
def get_comments(posts):
postids = []
for post in posts:
postids.append(post.key().id())
comments = {}
for i in postids:
comments[i] = Comment.all().ancestor(Blogpost.get_by_id(i))
return comments
在我的 jinja 模板中,我做了一个简单的 for 循环,看起来像这样
{% for comment in comments[entry.key().id()] %}
可能不是最好的方法,但体面且效果很好