搭建博客笔记:py_kouga (七) 页面侧边栏

2018-10-21  本文已影响0人  智勇双全的小六

参考教程

https://neutronx.github.io/django-markdownx/

  1. Django博客教程
  2. 自强学堂

使用自定义模板标签

Django 内置的模板标签: {% static %} 模板标签,这个标签帮助我们在模板中引入静态文件。

编写模板标签代码

在 blog 下新建 templatetags Python 包,在包里新建 blog_tags.py 文件。

from django import template
from ..models import Post

register = template.Library()

# 向 Django 注册这个函数
@register.simple_tag
def get_recent_posts(num=5):
    return Post.objects.all().order_by('-created_time')[:num]

使用自定义模板标签

# 首先要载入新建的python 文件,这就好比 JS,CSS 在头部的引用一样,载入之后,就可以任意使用里面定义的函数了。
{% load blog_tags %}
# 使用时,直接调用就好了。
templates/base.html

<div class="widget widget-recent-posts">
  <h3 class="widget-title">最新文章</h3>
  {% get_recent_posts as recent_post_list %}
  <ul>
    {% for post in recent_post_list %}
    <li>
      <a href="{{ post.get_absolute_url }}">{{ post.title }}</a>
    </li>
    {% empty %}
    暂无文章!
    {% endfor %}
  </ul>
</div>
上一篇下一篇

猜你喜欢

热点阅读