【问题标题】:AppEngine/Django: editing db.Key in the Admin appAppEngine/Django:在管理应用程序中编辑 db.Key
【发布时间】:2010-12-03 13:27:04
【问题描述】:

或者,准确地说,我如何正确地呈现一个表单来编辑模型管理页面上的 db.Keys 的 db.ListProperty,并使用 Django 的 app-engine-patch?

我有一个这样的Category

class Category(db.Model):
    title = db.CategoryProperty(required=True)

还有一个Post

categories = db.ListProperty(db.Key)

目前在 Django 管理页面中,该字段显示为包含 Python 列表对象字符串的文本框,这是错误的并且会中断保存:

[datastore_types.Key.from_path(u'blog_category', 3L, _app_id_namespace=u'xyz')]

所以我不得不在我的 ModelAdmin 类中“排除”它。我曾想过编写一个 ModelForm 手动连接 Category db.Keys 并将它们呈现为 Django 多选小部件,但我怀疑有更简单的方法来做到这一点......

【问题讨论】:

    标签: django google-app-engine app-engine-patch


    【解决方案1】:

    更彻底地阅读 App-engine-patch 文档后,似乎使用 ragendja.dbutils.KeyListProperty 解决了这个问题,旧的 Django 多选列表也是如此。 :)

    新代码:

    categories = KeyListProperty(Category)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-21
      • 1970-01-01
      • 1970-01-01
      • 2012-09-11
      • 2010-12-12
      • 2010-09-25
      • 2019-03-13
      • 1970-01-01
      相关资源
      最近更新 更多