簡體   English   中英

我在 django 中注冊時嘗試將用戶添加到定義的組時出現錯誤

[英]i am getting an error while i am trying to add a user to a defined group while registration in django

#views.py

塊引用

def sign_up(request):
if request.method == "POST":
    fm= SignUpForm(request.POST)
    if fm.is_valid():
        messages.success(request,'account created')
        fm.save()
        group = Group.objects.get(name='groupname')
        User.groups.add(group)
else:
    fm = SignUpForm()
return render(request,'signup.html',{'form':fm})`

並且,我收到如下 AttributeError :-

塊引用

Django Version: 3.2.3
Exception Type: AttributeError
Exception Value:    
'ManyToManyDescriptor' object has no attribute 'add'

User是模型,而不是特定的用戶實例。 您需要一個帶有 id 的實例來創建多對多關聯。

您的SignUpForm是否創建了一個新User 如果是這種情況,解決方案可能是

user = fm.save()
group = Group.objects.get(name='groupname')
user.groups.add(group)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM