新手App Engine数据存储区问题 - 模型和.filter()

时间:2011-04-06 20:26:41

标签: python google-app-engine

我目前正在测试GAE,我在修改数据存储时遇到了一些麻烦...

给出示例模型:

  class Category(db.Model):
      name = db.StringProperty()
      date_time = db.DateProperty(auto_now_add=True)

  class Link(db.Model): 
      category = db.ReferenceProperty(Category, collection_name='links')
      name = db.StringProperty()
      date_time = db.DateProperty(auto_now_add=True)
      link = db.LinkProperty()
      type = db.StringProperty(choices=set(["in", "out"]))

和不工作的代码:

category = Category.get(key)
link = category.links.filter('type=', 'in').get()

似乎我无法对引用的属性进行过滤()... 奇怪的是 category.links 是一个Query对象...... 可以遍历 category.links 并验证 type 属性,但我确信有更好的方法...

欢迎任何帮助 提前致谢

1 个答案:

答案 0 :(得分:4)

您的代码很好,只需在type=

之间加一个空格
link = category.links.filter('type =', 'in').get()