django之个人主页框架实现
上一节已经学习了,如何给时间,标签,分类,来分类。这一节学习下如何把这些内容写到页面上去
匹配url
创新互联公司主要从事成都做网站、成都网站制作、成都外贸网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务新绛,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
url(r'^(\w+)/$', views.home),
创建home函数
from django.db.models import Count
def home(request,site):
blog = models.Blog.objects.filter(site=site).first()
if not blog:
return redirect('/')
category_list = models.Article.objects.filter(blog=blog).values('category_id','category__title').annotate(ct=Count('nid'))
tag_list = models.Article2Tag.objects.filter(article__blog=blog).values('tag_id','tag__title').annotate(ct=Count('id'))
date_list = models.Article.objects.filter(blog=blog).extra(select={'ctime':"strftime('%%Y-%%m',create_time)"}).values('ctime').annotate(ct=Count('nid'))
article_list = models.Article.objects.all()
#return HttpResponse('......')
return render(
request,
'home.html',
{
'blog':blog,
'category_list':category_list,
'tag_list':tag_list,
'date_list':date_list,
'article_list':article_list
}
)
创建home页面
Title
{{ blog.title }}--{{ blog.user.nickname }}
文章分类
{% for category in category_list %}
- {{ category.category__title }}({{ category.ct }})
{% endfor %}
标签分类
{% for tag in tag_list %}
- {{ tag.tag__title }}({{ tag.ct }})
{% endfor %}
时间标签
{% for date in date_list %}
- {{ date.ctime }}({{ date.ct }})
{% endfor %}
预览
在主题里面通过link导入不同的css文件,给每个人设置不同的样式
网页名称:django之个人主页框架实现
网页路径:http://hbruida.cn/article/poocoo.html