如何在 django 中同时获取两个模型

Posted

技术标签:

【中文标题】如何在 django 中同时获取两个模型【英文标题】:how to fetch two models at the same time in django 【发布时间】:2021-10-02 13:31:29 【问题描述】:

我想在同一个 html 中获取两个模型,但无法同时获取两个模型,我在 django 中使用基于类的视图

这是我的意见.py

class home(View):
    def get(self, request,):
        category_list = Categories.objects.all()
        print(category_list)
        return render (request, 'home.html', 'category_list': category_list )

    def get (self, request):
        subcategory_list = Subcategories.objects.all()
        return render (request, 'home.html', 'subcategory_list': subcategory_list) 

我想我不能在 cbv 中调用 get 函数两次我必须在同一个函数中创建两个模型帮助将不胜感激 谢谢

【问题讨论】:

【参考方案1】:

您可以将多个值传递到单个 get() 函数内的上下文中:

class home(View):
    def get(self, request,):
        category_list = Categories.objects.all()
        subcategory_list = Subcategories.objects.all()
        return render(request, 'home.html', 'category_list': category_list,'subcategory_list': subcategory_list)

【讨论】:

以上是关于如何在 django 中同时获取两个模型的主要内容,如果未能解决你的问题,请参考以下文章

Django:如何从两个模型中获取数据并将其显示在模板中?

如何计算年龄是不是在出生年份的范围内,同时从Django ORM中的Db获取出生年份

如何从模型中获取一个项目并使用表单 django 将相同的项目保存在另一个模型中

如何通过在 django 中过滤两个不同的日期来获取数据?

如何从 django 模型中获取 ID

Django - 如何以有效的方式获取最新的相关模型,我可以在模板上进行迭代?