简体   繁体   English

当我尝试在 django 中保存对象时出现错误

[英]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:解决方案:

  1. To maintain naming convention, change model name students to Student为了保持命名约定,将模型名称students更改为Student
  2. Run python manage.py makemgirations运行python manage.py makemgirations
  3. Run python manage.py migrate运行python manage.py migrate

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Django 登录错误:save() 得到了一个意外的关键字参数“update_fields”,当我尝试登录时会发生这种情况 - Django login Error: save() got an unexpected keyword argument 'update_fields', this happens when i try to login 当我尝试在我的数据库 Django 中保存数据时出现问题 - Problem when I try to save data in my database Django "当我在 django 中读取文件字段时,我在生产中收到错误 500" - i got error 500 on production when i read filefield in django 使用Django表单提交时出现错误 - I got error when I submit with django form 我在保存方法中得到了错误的计算 Django - I got incorrect calculations in save method Django 当我尝试在代码下运行时出现错误,所以大家尝试解决错误 - when i tried to run below coding i got an error, so guys try to solve the error 当我尝试在程序上加载以前的保存时出错 - Error when I try to load a previous save on my program 当我尝试在 python 中将 pandas 保存为 excel 文件时出错 - Error when I try to save pandas as excel file in python Python / Tkinter - 当我尝试保存更改时出现错误消息 - Python / Tkinter - Error message when I try to save changes Django:当我尝试访问localhost时,它显示一个空的对象列表 - Django: when I try to access localhost, it displays an empty object list
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM