[英]i got error, when i try to save object in django
Help me to solve the below issue (i am just beginner, (even I may not ask a question in the right way)).帮助我解决以下问题(我只是初学者,(即使我可能不会以正确的方式提出问题))。 What else I need to provide you.
我还需要为您提供什么。
students() got an unexpected keyword argument 'stu_name' Request Method: POST Request URL: http://127.0.0.1:8000/students
enter code here
Django Version: 2.2.5 Exception Type: TypeError Exception Value: students() got an unexpected keyword argument 'stu_name' Exception Location: C:\\Users\\GAGAN\\Desktop\\tarkProject\\myapp\\views.py in students, line 18 Python Executable: C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\python.exe Python Version: 3.7.5 Python Path: ['C:\\Users\\GAGAN\\Desktop\\tarkProject', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\python37.zip', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\DLLs', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\lib', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\lib\\site-packages'] Server time: Wed, 1 Jan 2020 06:23:38 +0000'''student() 得到了一个意外的关键字参数 'stu_name' 请求方法:POST 请求 URL: http : //127.0.0.1 :8000/students
enter code here
Django 版本:2.2.5 异常类型:TypeError 异常值:students() got an意外的关键字参数 'stu_name' 异常位置:C:\\Users\\GAGAN\\Desktop\\tarkProject\\myapp\\views.py in Students,第 18 行 Python 可执行文件:C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\python.exe Python版本:3.7.5 Python 路径:['C:\\Users\\GAGAN\\Desktop\\tarkProject', 'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\python37.zip', 'C:\\Users\\GAGAN\\Anaconda3 \\envs\\djangoenv\\DLLs'、'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv\\lib'、'C:\\Users\\GAGAN\\Anaconda3\\envs\\djangoenv'、'C:\\Users\\GAGAN\\Anaconda3\\ envs\\djangoenv\\lib\\site-packages'] 服务器时间:2020 年 1 月 1 日星期三 06:23:38 +0000'''
views.py视图.py
from django.shortcuts import render
from .models import students
# Create your views here.
def home(request):
return render (request, 'myapp/home.html')
def contact(request):
return render (request, 'myapp/contact.html')
def students(request):
if request.method == 'POST':
name = request.POST.get('stu_name')
father = request.POST.get('stu_father')
mother = request.POST.get('stu_mother')
cl = request.POST.get('stu_class')
s = students(stu_name=name, stu_father=father, stu_mother=mother, stu_class=cl)
s.save()
return render (request, 'myapp/students.html')
else:
return render (request, 'myapp/students.html')
models.py模型.py
from django.db import models
# Create your models here.
class contact(models.Model):
stu_name = models.CharField(max_length=30)
stu_father = models.CharField(max_length=30)
stu_mother = models.CharField(max_length=30)
# stuClass = models.CharField(max_length=30)
def __str__(self):
return self.stu_name
class students(models.Model):
stu_name = models.CharField(max_length=30)
stu_father = models.CharField(max_length=30)
stu_mother = models.CharField(max_length=30)
stu_class = models.CharField(max_length=10)
def __str__(self):
return self.stu_name
Here students(stu_name=name, stu_father=father, stu_mother=mother, stu_class=cl)
is calling your function, rather than instantiating model.这里
students(stu_name=name, stu_father=father, stu_mother=mother, stu_class=cl)
正在调用您的函数,而不是实例化模型。 Because, your function and model name are the same.因为,您的功能和型号名称是相同的。
Solution:解决方案:
students
to Student
students
更改为Student
python manage.py makemgirations
python manage.py makemgirations
python manage.py migrate
python manage.py migrate
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.