我有两个模型Group
和User
。我在Group
引用User
中有许多字段。我还有一个中间模型GroupUser
,用于存储多对多关系的附加数据(分配日期和成员类型)。你知道吗
我有一个页面/groups/group-<group_id>/create-user/
,在那里我向组中添加用户。我的问题是,如果将用户创建为类型1,则不能将其分配给其他组。如果已存在与特定用户和类型1的关系,如何验证该用户未分配给其他组?你知道吗
我用的是CreateView
class GroupUserCreateView(CreateView):
model = GroupUser
fields = ['user', 'type']
template_name = "group_user_create_form.html"
def dispatch(self, request, *args, **kwargs):
self.group = get_object_or_404(Group, id=self.kwargs['group_id'])
return super(GroupUserCreateView, self).dispatch(request, *args, **kwargs)
def form_valid(self, form):
form.instance.group = self.group
return super(GroupUserCreateView, self).form_valid(form)
def get_success_url(self):
return reverse('group_user_list', kwargs={'group_id': self.group.id})
我不太了解CreateView,但是我猜,重写
get_form
并调整user
字段上的queryset。你知道吗相关问题 更多 >
编程相关推荐