Python Django自增模型
我设计Django模型如下所示: ` 然后在view.py中创建一个对象。虽然id是自动递增的,但python希望我定义一个id.View.py如下所示Python Django自增模型,python,django,Python,Django,我设计Django模型如下所示: ` 然后在view.py中创建一个对象。虽然id是自动递增的,但python希望我定义一个id.View.py如下所示 def register(request,id): if request.method=='POST': form = RegisterForm(request.POST) if form.is_valid(): username = form.cleaned_data['username'] n
def register(request,id):
if request.method=='POST':
form = RegisterForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
name=form.cleaned_data["name"]
password = form.cleaned_data["password"]
email=form.cleaned_data.get("email")
newUser = User(1,username,name,password,email)
newUser.save()
return redirect('mainPage')
else:
form=RegisterForm()
context = {
"form" : form,
"id":id
}
return render(request,"SignupLogin.html",context)
用户(1、用户名、姓名、密码、电子邮件)在该行中,1是id号。当我删除它时,会抛出关于缺少变量id的错误。如何摆脱1?只需将您的参数引入
model
init函数即可。这可能会有所帮助:)
如果您有
null
字段(null=True)
,则必须在模型上对其进行描述。您无需手动声明自动递增主键字段–如果没有字段,Django会隐式为您添加一个id
字段
您的问题可能是没有在手动创建的字段上设置
editable=False
。在这一行id models.AutoField(primary\u key=True)
,应该有=
b/w列名和列类型,而不是-
。在这里添加代码时,这是一个输入错误吗?像您编写的那样创建对象,解决问题。谢谢
def register(request,id):
if request.method=='POST':
form = RegisterForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
name=form.cleaned_data["name"]
password = form.cleaned_data["password"]
email=form.cleaned_data.get("email")
newUser = User(1,username,name,password,email)
newUser.save()
return redirect('mainPage')
else:
form=RegisterForm()
context = {
"form" : form,
"id":id
}
return render(request,"SignupLogin.html",context)
newUser = User(username=username, name=name, password=password, email=email)