【发布时间】:2010-01-25 14:28:00
【问题描述】:
我的模型中有与类别多对多连接的项目,并且类别具有用户的外键。
我遇到的障碍是如何创建一个视图,以将 Item 对象导入到用户的一个或多个类别中。
在最基本的实现中,我希望视图仅显示用户拥有的类别列表,并让视图处理表单,以便将项目添加到适当的类别中。
我一直在努力弄清楚如何开始,包括如何将用户的类别传递给表单。
谢谢。
【问题讨论】:
我的模型中有与类别多对多连接的项目,并且类别具有用户的外键。
我遇到的障碍是如何创建一个视图,以将 Item 对象导入到用户的一个或多个类别中。
在最基本的实现中,我希望视图仅显示用户拥有的类别列表,并让视图处理表单,以便将项目添加到适当的类别中。
我一直在努力弄清楚如何开始,包括如何将用户的类别传递给表单。
谢谢。
【问题讨论】:
在表单类(ItemForm)中这样做
def __init__(self,user,*args,**kwargs):
super(ItemForm,self).__init__(*args,**kwargs)
self.fields['categories'] = forms.ModelMultipleChoiceField(
queryset=Categories.objects.filter(user=user))
然后在您的视图中调用表单:
form = ItemForm(request.user)
或
form = ItemForm(request.user, request.POST)
这应该可以帮助您入门。希望你能从那里找出你需要做的事情。你的问题并没有留下太多的余地。
【讨论】: