【问题标题】:FieldError: Cannot resolve keyword 'published_date' into fieldFieldError:无法将关键字“published_date”解析为字段
【发布时间】:2019-05-26 20:45:59
【问题描述】:

我正在创建一个新的博客 django 应用程序,但是运行它时出现错误 这是我的代码

#model.py
class Post(models.Model):
    author=models.ForeignKey('auth.user',on_delete=models.CASCADE)
    title=models.CharField(max_length=200)
    text=models.TextField()
    create_date=models.DateTimeField(default=timezone.now())
    pubished_date=models.DateTimeField(blank=True,null=True)
    def publish(self):
        self.published_date=timezone.now()
        self.save()
    def approve_comments(self):
        return self.comments.filter(approved_comments=True)
    def get_absolute_url(self):
        return reverse("post_detail",kwargs={'pk':self.pk})

    def __str__(self):
        return self.title

class Comment(models.Model):

    post=models.ForeignKey('blog.Post',related_name='comments')
    author=models.CharField(max_length=200)
    test=models.TextField()
    create_date=models.DateTimeField(default=timezone.now())
    approved_comment=models.BooleanField(default=False)

    def approve(self):
        self.approved_comment=True
        self.save()
    def get_absolute_url(self):
        return reverse('post_list')
    def __str__(self):
        return self.text

当我运行服务器时,我收到此字段错误消息。我是 Django 新手

【问题讨论】:

    标签: django django-models


    【解决方案1】:

    在您的Post 模型中,您的pubished_date 有错字,可能是published_date

    【讨论】:

    • 这里,也是拼写错误self.published_date=timezone.now() 并在重命名文件名后运行迁移
    猜你喜欢
    • 2021-05-23
    • 2013-10-09
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-26
    相关资源
    最近更新 更多