如何在Django中获取同一类别中的所有帖子

时间:2018-08-01 03:42:11

标签: django django-views

我正在为新闻网站编写代码。新闻模型中有“类别”。

现在,我想获得所有名为“观点”类别的新闻。但是得到: 以int()为基数10的无效文字:“观点”

这是我的新闻模型的一部分:

return new ResponseEntity<String>("bar", HttpStatus.OK);

这是我的类别模型:

    class News(models.Model):
        category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name="cate", blank=True, verbose_name='分类')

这是我观点的一部分:

class Category(models.Model):
    name = models.CharField(max_length=40)  # 分类名

    class Meta:
        verbose_name = "分类"
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.name

这是我的index.html

的一部分
class NewsView(View):

    def get(self, request):
        opinion_news = News.objects.filter(category="opinion")

        return render(request, 'index.html', {

            'opinion_news': opinion_news,

        })

有什么朋友可以帮忙吗?非常感谢!

1 个答案:

答案 0 :(得分:1)

默认情况下,通过外键使用id字段(整数)进行过滤。要使用类别模型的另一个字段,请使用__fieldname语法。例如,如果category模型具有name字段:

opinion_news = News.objects.filter(category__name="opinion")