或者,确切地说,如何在模型管理页面上使用app-engine-patch为Django正确呈现表单以编辑db.Keys的db.ListProperty?
我有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,手动连接类别db.Keys并将它们呈现为Django多选小部件,但我怀疑有更简单的方法可以做到这一点......
答案 0 :(得分:0)
通过更全面地阅读App-engine-patch文档,似乎使用ragendja.dbutils.KeyListProperty
使用旧的Django多选列表来回答这个问题。 :)
新代码:
categories = KeyListProperty(Category)