当我通过 django 管理面板创建用户并将其标记为员工时,它可以正常登录 django 管理页面,但是当我创建用户 vie UserForm
并将其标记为员工时,它无法登录。提示员工用户名密码无效等等。
我怀疑错误是因为我正在使用,
TEMPLATE_CONTEXT_PROCESSORS = ('django.contrib.auth.context_processors.auth','django.core.context_processors.request')
目前我有以下代码:
user_form = UserForm(data=request.POST)
profile_form = UserProfileForm(data=request.POST)
if user_form.is_valid() and profile_form.is_valid():
user = user_form.save()
user.set_password(user.password)
user.save()
作为形式:
class UserForm(forms.ModelForm):
password = forms.CharField(widget=forms.PasswordInput())
class Meta:
model = User
fields = ('username', 'email', 'password')
现在告诉我,如何绕过这个问题?
最佳答案
三个简单步骤:
- 创建用户:
user = User.objects.create_user("用户名")
为您的用户设置密码:
user.password = "your_password"
user.set_password(user.password)
使用户成为 super 用户:
user.is_staff=True
user.is_superuser=True'
保存您的用户:
user.save()
现在你可以登录django的管理面板了
编辑: 除了上述所有内容,您还可以执行以下操作:
python manage.py createsuperuser
并创建一个 super 用户
关于python - admin注册员工用户无法登录django admin,表单注册员工用户无法登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30736422/