【发布时间】:2009-10-18 08:58:21
【问题描述】:
我有以下问题。我有一个不同的联系课程 用户可以标记自己的主题:
class Contact(db.Model):
contact_date = db.DateProperty(auto_now_add=True)
remarks = db.TextProperty()
topic = db.ReferenceProperty(Topic)
class Topic(db.Model):
topic = db.StringProperty(required=True)
description = db.TextProperty()
owner = db.ReferenceProperty(User, collection_name='topic_set')
def __unicode__(self):
return '%s' % (self.topic)
在此表单中,我只想显示某个用户的主题
class ContactForm(forms.ModelForm):
def __init__(self, user_filter, *args, **kwargs):
self.base_fields['topic'].queryset = Topic.all().filter('owner
= ', user_filter)
super(ContactForm, self).__init__(*args, **kwargs)
然后我从视图中调用 ContactForm,如下所示:
form = ContactForm(user_filter = request.user.key())
这一切都按预期工作。但是,当我提交表单时,我得到:
Caught an exception while rendering: Unsupported type for property :
<class 'django.http.QueryDict'>
我做错了吗?这是appengine django的一些问题吗 执行? 彼得
【问题讨论】:
-
你能告诉我们完整的异常,以及它发生的代码吗?它看起来与您向我们展示的代码无关。
-
尼克,我已经解决了。我有以下内容: if request.method == 'POST': form = ContactForm(request.user.key()) added data = request.POST 谢谢你帮我在其他地方寻找