如何在Django 2的一个模板中加载多个模型? 我已经读过Django Pass Multiple Models to one Template,但是,我迷失了答案,并且没有特定的答案可以将视图带入模板中,
我正在尝试将视图中的3个模型传递给模板,即Info,Slogan和Berita。
我的views.py
from django.shortcuts import render
from django.http import HttpResponse
from .models import Artikel, Berita, Data, Galeri, Info, Slogan, Profil
from django.views.generic import ListView, DetailView
def home(request):
extra_context : {"info" : Info.objects.all(),
"slogan": Slogan.objects.all(),
"berita": Berita.objects.all(),
#and so on for all the desired models...
}
return render (request, 'blog/home.html')
class HomeListView(ListView):
context_object_name = 'slogan'
template_name = 'blog/home.html'
queryset = Info.objects.all()
def get_context_data(self, **kwargs):
context = super(HomeListView, self).get_context_data(**kwargs)
context['slogan'] = Slogan.objects.all()
context['berita'] = Berita.objects.all()
# And so on for more models
return context
我的模板home.html
如下:
{% for slogans in slogan %}
<p>{{ slogans.konten }}</p>
<p>{{ slogans.author }}</p>
{% endfor %}
我的网址urls.py
如下:
from blog.views import HomeListView
urlpatterns = [
url(r'^$', HomeListView.as_view(), name="home"),
]
和浏览器上的页面源什么都没有显示。
对此我感到困惑,我在此网站上至少发现了3个类似结果,但对我不起作用。