在将数据写入数据库时,任何人都可以在 django 中帮助我解决这个问题,我收到此错误:
/artisans/reg/
registration() 处的 TypeError 得到了意外的关键字参数 'ar_name'
请求方法:POST
请求 URL:http://localhost:9000/artisans/reg/
Django 版本:3.2.9
异常类型:TypeError
异常值: registration() 得到了一个意外的关键字参数 'ar_name'
异常位置:C:\DihhProj\DIHH\artisans\views.py,第 42 行,在注册
Python 可执行文件:C:\DihhProj\hhenv\Scripts\python.exe
Python 版本: 3.7.7
我正在分享我收到此错误的代码:
视图.py
def registration(request):
if request.method=="POST":
length = 12
characters = list('abcdefghijklmopqrstuvwxyz!@#$1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ')
reg_string = list('1234567890')
reg_id = 'DIHH2021-'
pword = ''
for x in range(4):
reg_id += random.choice(reg_string)
for x in range(length):
pword += random.choice(characters)
fullname = request.POST['Aname']
email = request.POST['email_ID']
phone = request.POST['phone_no']
dob = request.POST['DoB']
gender = request.POST['gender']
cat = request.POST['category']
arID = request.POST['artisan_ID']
aadhaar = request.POST['aadhaar_no']
address = request.POST['address']
BnV = request.POST['block_village']
dist = request.POST['district']
train = request.POST['training']
#print(fullname, reg_id, pword, email, phone, dob, gender, cat, arID, aadhaar, address, BnV, dist, train)
def save(self, *args, **kwargs):
super.save(*args, **kwargs)
ins = registration(ar_name=fullname, reg_no=reg_id, password=pword, email=email, phone_no=phone, dob=dob, gender=gender, category=cat, artisan_id=arID, aadhaar=aadhaar, address=address, block_village=BnV, district=dist, training=train)
ins.save()
print("the Data has been inserted to database")
return HttpResponseRedirect('/artisans/createProfile/')
return render(request, "artisans/reg2.html", {})
在models.py中
from django.db import models
class registration(models.Model):
ar_name = models.CharField(max_length=60)
reg_no = models.CharField(primary_key=True, max_length=50)
password = models.CharField(max_length=30)
email = models.EmailField()
phone_no = models.CharField(max_length=11)
dob = models.DateField()
gender = models.CharField(max_length=15)
category = models.CharField(max_length=6)
artisan_id = models.CharField(max_length=50)
aadhaar = models.CharField(max_length=20)
address = models.TextField()
block_village = models.CharField(max_length=60)
district = models.CharField(max_length=60)
training = models.TextField()
def __str__(self):
return self.reg_no