models.py
from django.db import models
# Create your models here.
class ToDo(models.Model):
name = models.CharField(max_length=200, default=" ")
字符串
views.py
from django.shortcuts import render, HttpResponse
from .models import ToDo
# Create your views here.
def home(request):
# temp = ToDo.objects.all()
# context = {'temp':temp}
data = request.POST.get('name')
print(data)
context = {'data':data}
return render(request, "todo/home.html", context)
def todo(request):
# temp = ToDo.objects.all()
# context = {'temp':temp}
name = request.POST.get('name')
todo = ToDo(name=name)
todo.save()
context = {'names' : todo}
return render(request, "todo/todo.html", context)
型
todo.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<h1>TO DO LIST</h1>
<form method="post" action="/todo">
{% csrf_token %}
<label for="name"> </label>
<input type="text" name="name" id="name">
<br>
<button type="submit">Add Task</button>
</form>
{% for x in names %}
<h4>{{ x.name }}</h4>
{% endfor %}
</body>
</html>
型
我已经尝试改变名称和ID的一切,在YouTube上,但没有解决方案,我不知道错误发生在错误页面中,它显示todo.save()
有错误,但我不知道错误发生在请帮助:(
1条答案
按热度按时间acruukt91#
该错误在消息“NOT NULL constraint failed:todo_todo.name”中有描述。
字符串
此字段不允许空值。
要解决此问题,您可以:
1.允许创建空值
型
1.当name为null时,在视图中添加一些检查。
型