我的珊珊 2019-05-06 12:53 采纳率: 0%
浏览 2251

NOT NULL constraint failed:

Django创建表格并迁移以后使用django shell创建了一些数据,再通过create函数创建数据时遇到NOT NULL constraint failed:
请帮我看一下吧
这是我的模型

from django.db import models

# Create your models here.
class User(models.Model):
    name = models.CharField(
        max_length=30,
        unique=True
    )
    age = models.IntegerField(
        default=1
    )

这是我的函数

from django.http import HttpResponse
from django.shortcuts import render
from .models import User

# Create your views here.
def get_html(req):
    return render(req, "item.html")
def create_user(req):
    # 解析参数
    params = req.POST
    name = params.get('u_name')
    age = params.get('u_age')
    # id = params.get('u_id')
    user = User.objects.create(
        name=name,
        age=age,
        # id = id
    )
    return HttpResponse("创建成功!")

图片说明

  • 写回答

1条回答 默认 最新

  • liu_jxnu 2024-07-02 16:34
    关注

    1.在user表设计的时候age字段不允许NULL
    2.在接受参数的时候age = params.get('u_age')这里获取的值可能是None,对应的数据库里面就是NULL
    3.可以将“age = params.get('u_age')”改成“age = params.get('u_age') or 1”试一下

    评论

报告相同问题?