Python 通过Django';具有db.ListProperty(db.Key)的s模板

Python 通过Django';具有db.ListProperty(db.Key)的s模板,python,django,google-app-engine,Python,Django,Google App Engine,为此,我将班级改为: class Foo(db.Model): name = db.StringProperty(multiline=True) bars = db.ListProperty(db.Key) class Bar(db.Model): name = db.StringProperty(multiline=True) 这里是我的Django模板的一部分 <div > <h3>{{ current_foo.nam

为此,我将班级改为:

class Foo(db.Model):
    name = db.StringProperty(multiline=True)   
    bars = db.ListProperty(db.Key)

class Bar(db.Model):
    name = db.StringProperty(multiline=True)
这里是我的Django模板的一部分

   <div >
     <h3>{{ current_foo.name }}</h3>
      {% for bar in current_foo.bars %}
         <a href="/dialog_bar.html?id={{ bar.id }}"  >{{ bar.name }}</a>
      {% endfor %}
    </div>

{{current_foo.name}
{当前_foo.bars%}
{%endfor%}
我无法获得酒吧的名称和id,我如何才能做到这一点?

我遗漏了什么?

最好的办法是在Foo模型上定义一个简单的方法或属性,用于查询数据库中的相关条

class Foo(db.Model):
    ...
    def get_bars(self):
        return db.get(self.bars)
然后,您可以在模板中调用它:

{% for bar in current_foo.get_bars %}

请求db foreach bar不是一个问题吗?@ChristophenDeBove:这很可能是一个问题,但是如果不存储包含所有名称和ID列表的StringListProperty,如果您想显示它们,就无法避免从数据库中获取它们。