2
請有人幫我解決我的代碼中的這個錯誤。此錯誤或不斷顯示:integrityError,UNIQUE約束失敗:blog_post.author_id
這是我在models.py文件
class Post(models.Model):
author=models.OneToOneField(User)
topic = models.CharField(max_length=255)
article =models.TextField()
publish_date=models.DateTimeField(auto_now_add=True)
slug=models.SlugField(unique=True)
代碼這是在views.py文件中的代碼
def add_post(request):
if not request.user.is_authenticated():
return redirect('/login/')
if request.method=='POST':
form= post_form(request.POST)
if form.is_valid():
post=form.save(commit=False)
post.author=request.user
post.slug=slugify(post.topic)
form.save()
slug=slugify(topic)
return redirect('blog.views.post',slug=post.slug)
else:
return render(request,'post_add.html',{'form':form})
else:
form=post_form()
template='post_add.html'
return render (request,template,{'form':form})
你能發佈完整的錯誤嗎? – Programmer
您可能已經在您的Post模型中使用該用戶再次添加了該用戶。 因此,看看郵政表條目,以確保你不重複! –
您可能需要一個ForeignKey而不是OneToOne。由於作者可以有多個帖子。 – karthikr