TypeError在/ UserRegis / __init __()得到一个意想不到的关键字参数'username' [英] TypeError at /UserRegis/ __init__() got an unexpected keyword argument 'username'
问题描述
我遇到的问题是,当我使用UserReg.objects.create()时,它会报告上面的内容。而且我真的在海拔几个小时内查找了解决方案,但是没有办法。所以我想知道我在哪里错了,我该如何解决?
PS:原谅我可怜的英语,非常感谢。
我很抱歉,这些代码只是一部分代码,我只是发布一些。
我的总项目是
- 项目/
- app1 /...
- app2 /...
- other_general(manage.py etc)
======我会发布所有文件=======
app1 / models.py
from django.db import modelsfrom django.contrib.auth.models import :nickname = models.CharField(max_length = 32,null = True,blank = True)avatar = models.ImageField(upload_to ='/ media / client / avatar /%Y /%m /%d /',null =空白=真)#需要引用一些签名= models.CharField(max_length = 200,null = True,blank = True)user_uuid = models.IntegerField(null = True,blank = True,unique = True)user_focus = models.ManyToManyField(SocialMed,null = true __unicode __(self):return self.nickname class Meta(AbstractUser.Meta):swappable ='AUTH_USER_MODEL'def __init __(self,blank = True)user_favor_article = models.ManyToManyField(Article,null = True,blank =昵称):nickname ='无'返回昵称
app1 / views.py
from django.shortcuts import renderfrom django.contrib.auth.decorators import login_requiredfrom client.models import UserRegfrom app2.models import Article,SocialMeddef userRegiste(r equest):if request.method =='POST':user_name = request.POST.get('username')pass_word = request.POST.get('password')user_mail = request.POST.get('user_mail')clienter = UserReg.objects.create_user(username = user_name,password = pass_word,email = user_mail)print clienter return render(request,'register.html')else:return render(request,'register.html')
TRACEBACK
回溯切换到复制粘贴视图C:\Python27\lib\site- packages\django\core\handlers\base .py in get_response response = middleware_method(request,callback,callback_args,callback_kwargs)if response:break如果响应为None:wrapped_callback = self.make_view_atomic(callback)try:response = wrapped_callback(request,* callback_args,** callback_kwargs)...除了Exception为e:#如果视图引发异常,则通过异常#middleware运行它,并且如果异常中间件返回#响应,则使用它。否则,重新提出异常。对于self._exception_middleware中的middleware_method:response = middleware_method(request,e)▶userRegistedef中的本地varsE:\django_file\zuiwan\client\views.py userRegiste(request):if request.method =='POST': user_name = request.POST.get('username')pass_word = request.POST.get('password')user_mail = request.POST.get('user_mail')clienter = UserReg.objects.create_user(username = user_name,password = pass_word,email = user_mail)... print clienter return render(request,'register.html')else:return render(request,'register.html')▶本地varsC:\Python27\lib\site-packages \django\contrib\auth\models.py在create_user ** extra_fields)...▶本地varsC:\Python27\lib\site- packages\django\contrib\auth\models .py在_create_user date_joined = now,** extra_fields)...▶本地vars
这就是所有,我真的需要你的任何建议,请
替换
clienter = UserReg.objects.create_user(user_name,password = pass_word,email = user_mail)
/ pre>
与
clienter = UserReg.objects.create_user username = user_name,password = pass_word,email = user_mail)
The question I meet is that, when I use UserReg.objects.create(), it will report things above. And I really had look up the solution for seaveral hours, but it doesn't work. So I want to know where I am wrong and how can I fixed it ?
PS:forgive me poor English,thanks a lot.
I'm sorry about it, these code just a part of all codes, and I just post some.
my total project is
- project/
- app1/...
- app2/...
- other_general(manage.py etc) ======I will post all files=======
app1/models.py
from django.db import models
from django.contrib.auth.models import AbstractUser
from app2.models import SocialMed,Article
class UserReg(AbstractUser):
nickname = models.CharField( max_length = 32 ,null = True, blank = True )
avatar = models.ImageField( upload_to = '/media/client/avatar/%Y/%m/%d/' , null = True, blank = True) # need to refer to something
signature = models.CharField( max_length = 200, null = True , blank = True )
user_uuid = models.IntegerField( null = True , blank = True,unique = True )
user_focus = models.ManyToManyField( SocialMed ,null = True , blank = True )
user_favor_article = models.ManyToManyField( Article, null = True, blank = True )
def __unicode__(self):
return self.nickname
class Meta(AbstractUser.Meta):
swappable = 'AUTH_USER_MODEL'
def __init__(self,nickname):
nickname = 'None'
return nickname
app1/views.py
from django.shortcuts import render
from django.contrib.auth.decorators import login_required
from client.models import UserReg
from app2.models import Article, SocialMed
def userRegiste( request ):
if request.method == 'POST':
user_name = request.POST.get('username')
pass_word = request.POST.get('password')
user_mail = request.POST.get('user_mail')
clienter = UserReg.objects.create_user( username=user_name, password = pass_word,email = user_mail )
print clienter
return render( request, 'register.html' )
else:
return render(request, 'register.html' )
TRACEBACK
Traceback Switch to copy-and-paste view
C:\Python27\lib\site-packages\django\core\handlers\base.py in get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs) ...
except Exception as e:
# If the view raised an exception, run it through exception
# middleware, and if the exception middleware returns a
# response, use that. Otherwise, reraise the exception.
for middleware_method in self._exception_middleware:
response = middleware_method(request, e)
▶ Local vars
E:\django_file\zuiwan\client\views.py in userRegiste
def userRegiste( request ):
if request.method == 'POST':
user_name = request.POST.get('username')
pass_word = request.POST.get('password')
user_mail = request.POST.get('user_mail')
clienter = UserReg.objects.create_user( username=user_name, password = pass_word,email = user_mail ) ...
print clienter
return render( request, 'register.html' )
else:
return render(request, 'register.html' )
▶ Local vars
C:\Python27\lib\site-packages\django\contrib\auth\models.py in create_user
**extra_fields) ...
▶ Local vars
C:\Python27\lib\site-packages\django\contrib\auth\models.py in _create_user
date_joined=now, **extra_fields) ...
▶ Local vars
that's all , and I realy need your any advice, please
Replace
clienter = UserReg.objects.create_user( user_name, password = pass_word,email = user_mail )
with
clienter = UserReg.objects.create_user( username=user_name, password = pass_word,email = user_mail )
这篇关于TypeError在/ UserRegis / __init __()得到一个意想不到的关键字参数'username'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!