html - 如何在 Django 中创建一个下拉菜单,如下所示?
问题描述
我正在按照 Django for Beginners 书中的说明进行操作。我目前在第 13 章,试图创建我的主页以在右上角有一个下拉导航栏,在左上角有一个带有创建新文章按钮的日志。但是,我的代码最终将创建新文章按钮和下拉栏都放在了右侧。此外,当我单击下拉栏时,它没有显示预期的选项。
这是使用 Django 2.x 编写的。
这是我的代码:
<a class="navbar-brand" href="{% url 'home' %}">Newspaper</a>
<button class="navbar-toggler" type="button" data-toggle="collapse"
data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarCollapse">
{% if user.is_authenticated %}
<ul class="navbar-nav ml-auto">
<ul class="navbar-nav mr-auto">
<li class="nav-item"><a href="{% url 'article_new' %}">+ New</a></li>
</ul>
<li class="nav-item">
<a class="nav-link dropdown-toggle" href="#" id="userMenu"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{{ user.username }}
</a>
<div class="dropdown-menu dropdown-menu-right"
aria-labelledby="userMenu">
<a class="dropdown-item" href="{% url 'password_change' %}">Change password</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="{% url 'logout' %}">Log out</a>
</div>
</li>
</ul>
{% else %}
<form class="form-inline ml-auto">
<a href="{% url 'login' %}" class="btn btn-outline-secondary">Log in</a>
<a href="{% url 'signup' %}" class="btn btn-primary ml-2 ">Sign up</a>
</form>
{% endif %}
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>```
Here are the expected results:
![Expected](https://i.imgur.com/O92rHIH.png)
![Expected1](https://i.imgur.com/teyrG00.png)
Here's what I generated:
![Actual](https://i.imgur.com/wZ7JlXw.png)
解决方案
推荐阅读
- java - 存储两种数据类型的最佳集合?
- java - 处理来自 Java 的 HEIF 图像
- bamboo - 在构建脚本中获取触发原因
- python - Pandas - 取消堆叠到顶部列级别
- snowflake-cloud-data-platform - 雪花流数据保留
- kubernetes - Kubectl 命令找出 Linux 发行版和版本
- flask - flask_whooshachemyplus index_all() 不起作用
- scala - 如何根据分配的优先级选择最重要的行?
- python - 部署 Django 项目时出现 Elastic Beanstalk 错误
- android - OSX 上的 Android 模拟器问题 - 缺少模拟器引擎程序