使用Django在PTVS中的默认Jumbotron主题,当登录时,我创建的所有模板在导航栏中都有更多的高度。文本没有改变,只是导航条的底部边缘进一步下移了几个像素。
当:
-
窗口缩小,导航栏显示汉堡标志
-
我从模板中复制准确的代码来覆盖默认模板而不改变视图
-
{% include 'app/loginpartial.html' %}
从layout.html
中移除 -
{% if user.is_authenticated %}
从loginpartial.html
中去除 -
我在注销时浏览有问题的页面
我尝试从默认复制视图代码,但这并没有解决问题。任何想法是什么/在哪里的问题,以及如何才能解决?谢谢你!
Update这是loginpartial.html
中导致问题的代码,它似乎只影响我创建的页面,而不是默认页面:
<ul class="nav navbar-nav navbar-right">
<li><span class="navbar-brand">{{ user.username }}</span></li>
<li><a href="javascript:document.getElementById('logoutForm').submit()">Log off</a></li>
</ul>
views.py
old
def places(request):
places = Place.objects.all()
return render(request, 'app/places.html', {'title':'Places','places':places,'year':datetime.now().year})
views.py
尝试修复失败
def places(request):
assert isinstance(request, HttpRequest)
return render(
request,
'app/places.html',
context_instance = RequestContext(request,
{
'title':'Places',
'places':places,
'year':datetime.now().year,
})
)
loginpartial.html
与默认值afaik保持一致
{% if user.is_authenticated %}
<form id="logoutForm" action="/logout" method="post" class="navbar-right">
{% csrf_token %}
<ul class="nav navbar-nav navbar-right">
<li><span class="navbar-brand">{{ user.username }}</span></li>
<li><a href="javascript:document.getElementById('logoutForm').submit()">Log off</a></li>
</ul>
</form>
{% else %}
<ul class="nav navbar-nav navbar-right">
<li><a href="{% url 'login' %}">Log in</a></li>
</ul>
{% endif %}
看起来您遇到了这个问题,因为下面两件事:
-
navbar-right
类在user.is_authenticated
块中使用两次。这个类用于设置导航条的位置。要使其他元素右浮动,你应该使用pull-right
类。因此,尝试从表单中删除该类。 - 此外,为什么
<ul>
与表单包装?表单只是导航条的一部分,所以它应该在导航条里面。我建议在您的情况下使用<div>
作为导航条持有人,并将<ul>
和<form>
(如果您需要它)放在其中。