首页 > 解决方案 > Django2 ListView 使用两个模型

问题描述

我想从 ListView 访问两个模型,以便在 template_list 中显示数据

模型.py

class MdCategoria(models.Model):
    name = models.CharField(
        max_length=100,
        verbose_name='Nombre',
    )
class MdEntrada(models.Model):  
    categories = models.ManyToManyField(
        MdCategoria,
        verbose_name='Categorías',
    )

视图.py

class VwCategoria(BaseView, ListView):
    template_name = 'ap_blog/categoria.html'
    model = MdEntrada

¿ 如何从 VwCategoria 设置对 MdCategoria 的查询访问权限?¿ 如何使用 categoría.html 中的模板标签显示 MdCategoria 和 MdEntrada 数据?

标签: django

解决方案


视图.py

 class VwCategoria(BaseView, ListView):
         template_name = 'ap_blog/categoria.html'
        def get_context_data(self, **kwargs):
            context = super(VwCategoria, self).get_context_data(**kwargs)
            context['MdCategoria'] = About.objects.all()
            context['MdEntrada'] = MdEntrada.objects.all()
            return context

推荐阅读