python - 当我尝试在 django 中保存对象时出现错误
问题描述
帮助我解决以下问题(我只是初学者,(即使我可能不会以正确的方式提出问题))。我还需要为您提供什么。
学生()得到了一个意外的关键字参数'stu_name' 请求方法:POST 请求 URL: http: //127.0.0.1
enter code here
:8000/students Django 版本:2.2.5 异常类型:TypeError 异常值:学生()得到了一个意外的关键字参数'stu_name' 异常位置:C:\Users\GAGAN\Desktop\tarkProject\myapp\views.py 在学生中,第 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'''
视图.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')
模型.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
解决方案
这students(stu_name=name, stu_father=father, stu_mother=mother, stu_class=cl)
是调用您的函数,而不是实例化模型。因为,您的功能和型号名称是相同的。
解决方案:
- 为了保持命名约定,将模型名称更改
students
为Student
- 跑
python manage.py makemgirations
- 跑
python manage.py migrate
推荐阅读
- tinymce - tinyMCE - 是否可以防止在文本框中剪切和粘贴图像(base64)?
- java - Selenium 项目使用 android studio 构建失败
- r - R使用位置切割日期,而不是实际日期
- postgresql - 在 PostgreSQL 10 for Zabbix 3.4 中自动化本机范围分区
- amazon-mws - 我可以使用来自同一服务器的两个亚马逊 MWS 账户吗?
- video-streaming - 如何使用 JW Player 或 Video.js 播放 Google Drive 视频?
- python - 基于唯一列值创建列并填充
- matlab - 为 fmincon 算法生成 n 维随机起点 - 空间的均匀分布
- c# - 在 Docker 上运行 .NET 框架控制台应用服务
- javascript - setTimeout 中的词法作用域