Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ';集团';对象没有属性';用户集';_Python_Django - Fatal编程技术网

Python ';集团';对象没有属性';用户集';

Python ';集团';对象没有属性';用户集';,python,django,Python,Django,因为默认的django管理组表单没有用于选择组中用户的字段。我写下了一些代码,我在网上添加了“选定用户”字段。一切正常。在我尝试保存我创建的组表单之前,我遇到了以下错误“group”对象没有属性“user\u set” class GroupAdminForm(forms.ModelForm): class Meta: model=group exclude=[] users=forms.ModelMultipleChoiceField(query

因为默认的django管理组表单没有用于选择组中用户的字段。我写下了一些代码,我在网上添加了“选定用户”字段。一切正常。在我尝试保存我创建的组表单之前,我遇到了以下错误“group”对象没有属性“user\u set”

class GroupAdminForm(forms.ModelForm):
    class Meta:
        model=group
        exclude=[]
    users=forms.ModelMultipleChoiceField(queryset=User,objects.all(),widget=FilteredSelectMultiple('users',False),required=False)
   def __int__(self,*args,**kwargs):
       super(GroupAdminForm,self).__int__(*args,**kwargs)
       if self.instance.pk:
           self.fields['users'].initial=self.instance.user_set.all()
   def save_m2m(self):
       self.instance.user_set.set(self.cleaned_data['users'])
   def save(self,*args,*kwargs):
       instance= super(GroupAdminForm,self).save()
       self.save_m2m()
       return instance

我收到此错误“Group”对象没有属性“user\u set”。我不知道如何着手解决这个问题。请帮忙。我是django的海军。请帮助处理以下问题后,我个人的错误是,我的CustomUserAdmin(UserAdmin)中有一个“添加表单”,该表单引用了组管理员表单

要扩展,我的原始代码如下所示:

类CustomUserAdmin(UserAdmin):
这就是罪魁祸首
模型=自定义用户
排序=(‘发布日期’,)
...
我发现
GroupAdmin
表单:

class GroupAdmin(admin.ModelAdmin):
    form = GroupAdminForm

    def save_model(self, request, obj, form, change):
        super(GroupAdmin, self).save_model(request, obj, form, change)
        if 'users' in form.cleaned_data:
            form.instance.user_set.set(form.cleaned_data['users'])
应仅附加到“组”模型,而不是用户模型。因此,我不断地得到上面的错误

简单地删除问题代码,然后按照Ekad的“更新”答案解决了我的问题

对于像我这样的初学者,我可以通过在Django中设置断点来调试它,我发现
self.instance
是一个“{Group}”。既然如此,我为什么要在扩展用户模型中添加与组相关的表单呢

这对于经验丰富的开发人员来说当然是最基本的,但是对于我来说,正是这个难以捕捉的错误导致了这个bug