美文网首页
页面头展示利用过滤器

页面头展示利用过滤器

作者: 两点半的杂货铺 | 来源:发表于2018-03-20 14:42 被阅读3次
image.png

一、注意点

  • 利用集合保存写好的html
  • 判断当有指定当分类id时,全部页百分百未选中
  • 判断当没有指定当分类id时,全部页百分百选中
from django import template
from  django.utils.safestring import mark_safe

register = template.Library()

@register.filter
def ArticleType(article_type,article_type_id):
    ret = []
    if article_type_id:
        html = '<li><a href="/all/">全部 <span class="sr-only">(current)</span></a></li>'
        ret.append(html)
        for i in article_type:
            if i.nid == article_type_id:
                html = '<li  class="active"><a href=/all/%s.html>%s</a></li>'%(i.nid,i.articletype)
            else:
                html = '<li><a href=/all/%s.html>%s</a></li>' % (i.nid, i.articletype)
            ret.append(html)
    else:
        html = '<li class="active"><a href="/all/">全部 <span class="sr-only">(current)</span></a></li>'
        ret.append(html)
        for i in  article_type:
            html = '<li><a href=/all/%s.html>%s</a></li>' % (i.nid, i.articletype)
            ret.append(html)
    temp = "".join(ret)
    return  mark_safe(temp)

页面写法

 <ul class="nav navbar-nav">
        {{ article_type|ArticleType:article_type_id }}
      </ul>

相关文章

网友评论

      本文标题:页面头展示利用过滤器

      本文链接:https://www.haomeiwen.com/subject/jbvyfftx.html