为了账号安全,请及时绑定邮箱和手机立即绑定

访问我的网站页面后无法登录管理页面

访问我的网站页面后无法登录管理页面

温温酱 2021-08-24 17:59:15
我在我的管理部分创建了一个超级用户。之后,我可以登录管理页面。但是每当我尝试访问一些 myapp 页面,然后我又想访问管理页面时,它会显示此错误“请为员工帐户输入正确的用户名和密码。请注意,这两个字段都可能区分大小写。” 我试过多次。我可以用上次创建的同名创建一个新的超级用户。这是两个屏幕截图:如何解决这个问题?
查看完整描述

2 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

我认为你把事情复杂化了。所以试试这样:


# forms



class UserForm(forms.ModelForm):

    password = forms.CharField(widget= forms.PasswordInput)

    full_name = forms.CharField()

    codeforces_id = forms.CharField()

    Uva_Id = forms.CharField()


    class Meta:

        model = User

        fields = ('username','email','password', 'full_name', 'codeforces_id', 'Uva_Id') 



    def save(self, commit=True):

        full_name = self.cleaned_data.pop('full_name')

        codeforces_id = self.cleaned_data.pop('codeforces_id')

        uva_Id = self.cleaned_data.pop('Uva_Id')

        user = super(UserForm, self).save(commit=False)

        password = self.cleaned_data.get('password')

        username = self.cleaned_data.get('username')

        user.set_password(password)

        user.save()

        Profile.objects.create(

            user=user,

            full_name = full_name,

            codeforces_id = codeforces_id,

            Uva_Id = uva_id

        )

        authenticate(username=username, password=password)

        return user


# view


class UserFormView(CreateView):

    form_class = UserForm

    template_name = 'some_template.html'



# template


<form action="/your-name/" method="post">

    {% csrf_token %}

    {{ form.as_p }}

    <input type="submit" value="Submit">

</form>


# Also you can remove the signal related codes from Profile Model as well



查看完整回答
反对 回复 2021-08-24
  • 2 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号