Python django1.9中发生了完整性错误
我是django 1.9的新手,我正在尝试制作一个应用程序,但是我遇到了这个错误,我不知道如何修复它。这是我的错误和代码。 错误: 在models.py中:Python django1.9中发生了完整性错误,python,django,Python,Django,我是django 1.9的新手,我正在尝试制作一个应用程序,但是我遇到了这个错误,我不知道如何修复它。这是我的错误和代码。 错误: 在models.py中: from django.db import models from django.conf import settings from django.contrib.auth.models import User class Blog(models.Model): user = models.ForeignKey(settings.A
from django.db import models
from django.conf import settings
from django.contrib.auth.models import User
class Blog(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL)
title = models.CharField(max_length=50)
content = models.CharField(max_length=99999)
date = models.DateTimeField(auto_now_add=True)
def __unicode__(self):
return self.title
在views.py中:
def post(request):
form = BlogText()
if request.method == 'POST':
form = BlogText(request.POST.copy())
if form.is_valid():
data = form.cleaned_data
title = data['title']
content = data['content']
if not Blog.objects.all().filter(title=title):
blog = Blog.objects.create(title=title,content=content,date=timezone.now())
return render(request,'blogapp/postok.html')
else:
return HttpResponse('The title is used')
else:
form = BlogText()
return render(request,'blogapp/post.html',{'form':form})
是否需要在视图.py中添加此项
if request.user.is_authenticated():
有人请帮帮我。我认为我在这方面做得很差。您会遇到此错误,因为用户id
不能为空:
非空约束失败:blogapp\u blog.user\u id
您还需要添加用户
:
blog = Blog.objects.create(title=title, content=content,
date=timezone.now(), user=request.user)
还请确保只有登录的用户才能使用decorator访问此视图:
@login_required
def post(request):
# your stuff here
如果用户当前未登录,则该用户将被设置为AnonymousUser.的实例。。是的,装饰器可以工作,但是用户可以看到彼此的文章。事实上,这不是我想要实现的。
@login_required
def post(request):
# your stuff here