NOT NULL约束失败:new__PFNews_pfnews.Auther_id

问题描述 投票:-1回答:1

我在堆栈溢出时看了很多这些问题,但是似乎没有一个解决方案对我有帮助。我试过null = True和blank = True以及default = None,它们都给出错误。有人有想法么?非常感谢!我得到的错误是这样的:1-当我从(前端)创建新帖子时,它给出了空帖(无标题,无内容且无作者)2-当我从后端创建它工作正常。3-当我尝试删除null = True或blank = True或两者中的任何一个时,它给出以下错误:

NOT NULL约束失败:new__PFNews_pfnews.Auther_id

models.py

class PFNews (models.Model):
Title = models.CharField(max_length=200)
Content = models.TextField()
Post_Date = models.DateTimeField(default=timezone.now)
Post_Update = models.DateTimeField(auto_now=True)
Auther = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)

def __str__(self):
    return self.Title

def get_absolute_url(self):
    # return '/detail/{}'.format(self.pk)
    return reverse('pfnewsdetails', args=[self.pk])
class Meta:
    ordering = ('-Post_Date',)

views.py

class PostCreateView(LoginRequiredMixin, CreateView):
model = PFNews
# fields = ['title', 'content']
template_name = 'PFNews/new_post.html'
form_class = PostCreateForm

def form_valid(self, form_class):
    form_class.instance.author = self.request.user
    return super().form_valid(form_class)

urls.py

urlpatterns = [
path('', home, name='home'),
path('about/', aboutus, name='about'),
path('newsdetail/<int:pfnews_id>/', pfnews_detail, name='pfnewsdetails'),
path('new_post/', PostCreateView.as_view(), name='new_post'),
path('detail/<slug:pk>/update/', PostUpdateView.as_view(), name='post-update'),
path('detail/<slug:pk>/delete/', PostDeleteView.as_view(), name='post-delete'),]
python python-3.x django-3.0
1个回答
0
投票

在views.py

form_class.instance.author = self.request.user

您的models.py中没有小写的实例作者,请检查拼写

© www.soinside.com 2019 - 2024. All rights reserved.