基于web.py的无限分类哦
这里做了一个专门生成分类树的递归函数
还有一个获取文章的函数
数据库,依然需要id和pid两个必备字段
模型部分
#-*-coding:utf-8-*-import web from settings import db from settings import page_size this_tree =[]def tree(data, pid=0, count=0):for key in data:if key.pid == pid: key.count = count this_tree.append(key) tree(data, key.id, count +1)return this_tree def get_all_category():#不转成list,就只能循环一次.因为要做递归,所以这里需要list()一下 category = list(db.select('category', order='`pid` asc, `order` asc, id asc')) category_tree = tree(category)[:]del this_tree[:]return category_tree
控制器部分
#-*-coding:utf-8-*-import web import model from web import storage from settings import render_admin as render j = storage(app='content/')class category:@login_requiredef GET(self): j.category = model.get_all_category()return render('category',**j)
模板部分
{% for c in category%} <tr><tdclass='name'> {{ ' ' * c.count }} <ahref="#"target="_blank"title="ID={{ c.id }}"class="tip-top"> {{ c.name }} </a></td></tr> {% endfor %}
大功告成,就这么容易
武汉长乐未央网络科技,版权所有,转载请注明.
浙公网安备 33010602011771号