Django之便签生成
2016-04-20 10:28
429 查看
myblog_tag.py
模版:
看下面,哦,还是挺丑的
纳尼 这也太low了
go on add myblog_tag.py here:
模版修改下:
哦 原来是个🐦。。。
哦 你再改改试试
模版:
尼玛这。。。感觉记不住
程序员多么苦逼,一个Django 的小小功能都这么change
#coding:utf-8
__author__ = 'similarface' from django import template register=template.Library() from ..models import Post @register.simple_tag def total_posts(): ''' 文章总数 :return:返回发布的文章总篇数 ''' return Post.published.count()
模版:
{% load blog_tags %} {% load staticfiles %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{% block title %}{% endblock %}</title> <link href="{% static "css/blog.css" %}" rel="stylesheet"> </head> <body> <div id="content"> {% block content %} {% endblock %} </div> <div id="siderbar"> <h2>我的博客</h2> <p>目前已写文章总数 {% total_posts %} .</p> </div> </body> </html>
看下面,哦,还是挺丑的
纳尼 这也太low了
go on add myblog_tag.py here:
@register.inclusion_tag('myblog/post/latest_posts.html') def show_latest_posts(count=5): ''' 最新count篇文章 :param count: 文章的篇数 默认5篇 :return:最新count篇文章的对象 ''' latest_posts=Post.published.order_by('-publish')[:count] return {'latest_posts':latest_posts}
#myblog/post/latest_posts.html:
<ul> {% for post in latest_posts %} <li> <a href="{{ post.get_absolute_url }}">{{ post.title }}</a> </li> {% endfor %} </ul>
模版修改下:
<div id="siderbar"> <h2>我的博客</h2> <p>目前已写文章总数 {% total_posts %} .</p> <h3>最新文章</h3> {% show_latest_posts 3 %} </div>
哦 原来是个🐦。。。
哦 你再改改试试
#coding:utf-8
__author__ = 'similarface'
from django import template
from django.db.models import Count
register=template.Library()
from ..models import Post
@register.simple_tag()
def total_posts():
'''
文章总数
:return:返回发布的文章总篇数
'''
return Post.published.count()
@register.inclusion_tag('myblog/post/latest_posts.html') def show_latest_posts(count=5): ''' 最新count篇文章 :param count: 文章的篇数 默认5篇 :return:最新count篇文章的对象 ''' latest_posts=Post.published.order_by('-publish')[:count] return {'latest_posts':latest_posts}
@register.assignment_tag
def get_most_commented_posts(count=5):
'''
返回评论最多的前count篇文章
:param count:默认为5
:return:返回评论最多的前count篇文章
'''
return Post.published.annotate(total_comments=Count('comments')).order_by('-total_comments')[:count]
模版:
<div id="siderbar"> <h2>我的博客</h2> <p>目前已写文章总数 {% total_posts %} .</p> <h3>最新文章</h3> {% show_latest_posts 3 %} <h3>最受欢迎的文章</h3> {% get_most_commented_posts as most_commented_posts %} <ul> {% for post in most_commented_posts %} <li> <a href="{{ post.get_absoulte_url }}">{{ post.title }}</a> </li> {% endfor %} </ul> </div>
尼玛这。。。感觉记不住
程序员多么苦逼,一个Django 的小小功能都这么change
相关文章推荐
- Django之通过tag推荐文章
- BAPI for goods receipt for subcontracting PO
- Django之tag的使用
- Google推荐的图片加载库Glide介绍
- Django初学笔记1.
- [HDU 5512][2015ACM/ICPC亚洲区沈阳站] Pagodas 博弈论
- BZOJ 4510|USACO 2016 Jan Gold|Ratio Contact|动态规划
- Fibonacci 矩阵快速幂
- Django 异常解决
- Django初识
- google hash table ------稀疏hash表之sparse hashtable
- django 链接地址匹配流程
- 在浏览器中输入Google.com并且按下回车之后发生了什么?
- 1003,1004,1005 Hangover,财务管理,I Think I Need a Houseboat
- BZOJ 4509 USACO 2016 Jan Gold Angry Cows
- django post_save post_delete
- django views test
- Digogo ugdx文件的制作
- Digogo ugdx文件的制作
- go语言scan空值报错