首页 > 解决方案 > 如何访问不同视图函数中的对象

问题描述

我正在尝试创建一个 header.html 来为所有页面创建一个标题,我想为导航黑白页面创建一个下拉列表,我想从模型中获取标题我这里有两个视图,一个用于主页和标题页面主页视图:

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>

标签: pythondjangodjango-modelsdjango-templatesdjango-views

解决方案


尝试这个:

视图.py

def header(request):
    services = services.objects.all()
    return render(request, 'header.html', {'services':services})

header.html

<ul>
    {% for service in services %}
    <li>
        <a href="{% url 'details' service.slug %}">{{ service.title }}</a>
    </li>
    {% endfor %}
</ul>

推荐阅读