Python 如何访问不同视图函数中的对象
我正在尝试创建一个header.html来为所有页面创建一个header,我想为导航b/w页面创建一个下拉列表,我想从模型中获取标题我这里有两个视图 一个用于主页,另一个用于页眉 主页视图:Python 如何访问不同视图函数中的对象,python,django,django-models,django-templates,django-views,Python,Django,Django Models,Django Templates,Django Views,我正在尝试创建一个header.html来为所有页面创建一个header,我想为导航b/w页面创建一个下拉列表,我想从模型中获取标题我这里有两个视图 一个用于主页,另一个用于页眉 主页视图: def homepage(request): aboutinfo = aboutpage.objects.all() servicesinfo = services.objects.all() programinfo = prgm.objects.all() return render(request,
def homepage(request):
aboutinfo = aboutpage.objects.all()
servicesinfo = services.objects.all()
programinfo = prgm.objects.all()
return render(request, 'index.html', {'aboutinfo': aboutinfo, 'servicesinfo': servicesinfo, 'programinfo': programinfo})
标题视图
def header(request):
info = services.objects.all()
return render(request, 'header.html', {'info':info})
当我尝试信息时,它不起作用,我尝试了主页上的服务信息,它只起作用索引页`
<li class="menu-has-children"><a href="#services">All Services</a>
<ul>
{% for services in /* what is here */.all %}
<li><a href="{% url 'details' services.slug %}">{{ services.title }}</a></li>
{% endfor %}
</ul>
</li>
{%/*这里是什么*/.all%}
{%endfor%}
还是试着用括号吧
info = services.objects.all()
试试这个:
views.py
header.html
{%用于服务中的服务%}
-
{%endfor%}
{%forservicesinfo.all%}是的,我试过了,但只在索引页中工作,不在标题页中。如果你想在标题页中添加servicesinfo=services.objects.all(),还有上下文,因为你正在将对象返回到header.html中,请尝试访问它。
def header(request):
services = services.objects.all()
return render(request, 'header.html', {'services':services})
<ul>
{% for service in services %}
<li>
<a href="{% url 'details' service.slug %}">{{ service.title }}</a>
</li>
{% endfor %}
</ul>