[英]'Manager' object has no attribute 'create_user' in django 1.7
Hi i am taking user's username and password in django 1.7 but i am getting error - 'Manager' object has no attribute 'create_user'嗨,我正在 django 1.7 中获取用户的用户名和密码,但出现错误 - “Manager”对象没有属性“create_user”
my views.py我的意见.py
def register(request):
if request.method == 'POST':
form = UserForm(request.POST)
if form.is_valid():
post = request.POST
username = post['username']
email = post['email']
password = post['password']
user = User.objects.create_user(username, email, password)
return redirect('/student/lastpage')
else:
form = UserForm()
return render(request, 'student/register.html', {'form': form})
my models.py我的模型.py
class User(models.Model):
username = models.CharField(max_length=20)
password = models.CharField(max_length=30)
email = models.CharField(max_length=50)
def __str__(self):
return self.username
class UserForm(ModelForm):
class Meta:
model = User
fields = '__all__'
any help is appreciated任何帮助表示赞赏
thanks in advance提前致谢
Default ModelManager
doesn't have the create_user
method.默认ModelManager
没有create_user
方法。 Set the proper manager to your User
class.将适当的管理器设置为您的User
类。 Also you need to inherit from AbstractBaseUser class instead of models.Model
:您还需要从AbstractBaseUser类而不是models.Model
继承:
from django.contrib.auth.models import AbstractBaseUser, UserManager
class User(AbstractBaseUser):
...
objects = UserManager()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.