1、在 learning_log/learning_logs/templates/learning_logs
这个目录下添加一个 base.html 文件,这可以认为是一个父模板文件。
<p>
<a href="{% url 'learning_logs:index' %}">博客主页</a>
</p>
{% block content %}
{% endblock content %}
2、有了 base.html 以后 ,index.html 就可以修改了。
{% extends 'learning_logs/base.html' %}
{% block content %}
<p>这个简单的博客系统,可以帮助你记录你的学习轨迹。只要是任何你认为有意义的知识,都可以在这里记录下来。</p>
{% endblock content %}
3、开发所有话题列表
(1)在应用中配置 urls
learning_log/learning_logs/urls.py
url(r'^topics/', views.topics, name='topics')
(2)编写 views
def topics(request):
"""显示所有的话题"""
topics = Topic.objects.all()
context = {'topics': topics}
return render(request, "blog/topics.html", context)
(3)编写页面,包括 base.html
{% extends 'blog/base.html' %}
{% block content %}
<ul>
{% for topic in topics %}
<li>{{ topic }}</li>
{% empty %}
<li>话题没有被创建。</li>
{% endfor %}
</ul>
{% endblock content %}
base.html 添加
<p>
<a href="{% url 'blog:index' %}">博客主页</a> -
<a href="{% url 'blog:topics' %}">所有话题</a>
</p>
{% block content %}
{% endblock content %}
这样,一个结合了数据库的,有 url 、控制器、视图的功能就简单地实现了。