djang中用于简单泛型视图的额外的_context函数

2024-04-24 13:05:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有我的网页,我有我的帖子列表,我还想有侧边栏与建议。我在帖子中使用了通用的ListView,并且需要以某种方式传递建议,所以我使用了额外的上下文,这应该是(?)根据我读过的几个例子,像这样工作,但是在模板中没有“suggestions”对象。在

class PostList(generic.ListView):
    model = models.Post
    paginate_by = 10
    context_object_name = 'mj'
    def get_queryset(self):
        return models.Post.objects.filter(user = self.request.user)
    def extra_context(self):
        return {'suggestions':models.Pla.objects}

我没有django的经验,所以也许有更好的方法来传递侧边栏的建议。也许可以用包装视图函数来实现,因为我想要一些建议。。在


Tags: self网页列表returnobjectsmodelsdef方式
1条回答
网友
1楼 · 发布于 2024-04-24 13:05:21

基于类的视图不像以前基于函数的泛型视图那样使用extra_context。相反,通常的方法是使用自定义的get_context_data调用,如文档中所示:

https://docs.djangoproject.com/en/dev/topics/class-based-views/generic-display/#adding-extra-context

文档中的示例几乎就是您要做的。您可能希望进一步遵循它的示例,并传入一个queryset(models.Pla.objects.all()),而不是manager对象(models.Pla.objects)。在

相关问题 更多 >