登陆密码设置参考
http://www.cnblogs.com/ujq3/p/8553784.html
list_filter = ('source','consultant','consult_courses',)
list_filter = ('source','consultant','consult_courses',)
list_filter = () # 过滤器(可以包含ManyToManyField) (注意加 逗号 , )
1 {#table_data_list.html#} 2 {## ————————08PerfectCRM实现King_admin显示注册表的字段表头————————#} 3 4 {% extends 'king_master/king_index.html' %} {#继承模板#} 5 {% load kingadmin_tags %} {#通过自己定义标签获取中文,Django中利用filter与simple_tag为前端自定义函数的实现方法#} 6 7 {% block right-container-content %} 8 9 {#调用kingadmin_tags里的方法 获取 base_admin的值 #} 10 <h4>{% get_model_verbose_name admin_obj.model %}</h4> 11 12 13 14 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 15 {#判断 crm/kingadmin.py 里class CustomerAdmin(BaseAdmin):有没有使用list_filter = ('source',) #} 16 {% if admin_obj.list_filter %} 17 <div class="row"> 18 <form> 19 {#循环 上面 list_filter = ('source',) 的字段 #} 20 {% for filter_column in admin_obj.list_filter %} 21 <div class="col-lg-1">{#最多12份 空间 #} 22 <div>{{ filter_column }}</div> 23 24 {#到后端取值,传参数到后端, kingadmin/templatetags/kingadmin_tags.py的def get_filter_field (filter_column,admin_obj): #} 25 <div>{% get_filter_field filter_column admin_obj %}</div> 26 </div> 27 {% endfor %} 28 <div> 29 <input type="submit" class="btn btn-success" value="过滤"> 30 </div> 31 </form> 32 </div> 33 {% endif %} 34 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 35 36 37 38 39 <table class="table table-hover"> 40 <thead> 41 <tr> 42 {#循环调用kingadmin/base_admin里的class BaseAdmin下的list_display = () 方法#} 43 {% for column in admin_obj.list_display %} 44 <th>{{ column }}</th> 45 {% endfor %} 46 </tr> 47 </thead> 48 49 {## ————————09PerfectCRM实现King_admin显示注册表的内容————————#} 50 <tbody> 51 {#循环调用kingadmin/views 里的def table_data_list下的admin_obj.querysets #} 52 {% for obj in admin_obj.querysets %} 53 <tr> 54 {#通过kingadmin_tags在后台处理 再传到前端 #} 55 {#调用kingadmin/templateags/kingadmin_tags 里的def build_table_row(admin_obj,obj):#} 56 {% build_table_row admin_obj obj %} 57 </tr> 58 {% endfor %} 59 </tbody> 60 {## ————————09PerfectCRM实现King_admin显示注册表的内容————————#} 61 62 </table> 63 64 {## ————————12PerfectCRM实现King_admin分页上下页————————#} 65 <div class="row"> 66 <div class="pagination"> 67 <span class="step-links"> 68 {% if admin_obj.querysets.has_previous %} 69 70 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 71 {# <a href="?page={{ admin_obj.querysets.previous_page_number }}#} 72 <a href="?page={{ admin_obj.querysets.previous_page_number }}{% generate_filter_url admin_obj %}">上一页 </a> 73 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 74 75 {% endif %} 76 77 <span class="current"> 78 第{{ admin_obj.querysets.number }}页,共{{ admin_obj.querysets.paginator.num_pages }}页 79 </span> 80 81 {% if admin_obj.querysets.has_next %} 82 83 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 84 {# <a href="?page={{ admin_obj.querysets.next_page_number }}#} 85 <a href="?page={{ admin_obj.querysets.next_page_number }}{% generate_filter_url admin_obj %}">下一页</a> 86 {## ————————15PerfectCRM实现King_admin多条件过滤————————#} 87 88 {% endif %} 89 </span> 90 </div> 91 </div> 92 {## ————————12PerfectCRM实现King_admin分页上下页————————#} 93 94 {## ————————13PerfectCRM实现King_admin分页页数————————#} 95 <nav aria-label="..."> 96 <ul class="pagination"> 97 <li class="disabled"></li> 98 {% for page in admin_obj.querysets.paginator.page_range %} {#循环 分页 范围#} 99 100 {% if page == admin_obj.querysets.number %} {#当前页高亮,否则不加高亮#} 101 <li class="active"> 102 {% else %} 103 <li > 104 {% endif %} 105 106 {#后台拼接返回,kingadmin/templatetags/kingadmin_tags.py 里def generate_filter_url(admin_obj):#} 107 <a href="?page={{ page }}{% generate_filter_url admin_obj %}">{{ page }}</a> 108 </li> 109 {% endfor %} 110 </ul> 111 </nav> 112 {## ————————13PerfectCRM实现King_admin分页页数————————#} 113 114 {## ————————14PerfectCRM实现King_admin分页的省略显示————————#} 115 <div class="row panel-body"> 116 <nav aria-label="..."> 117 <ul class="pagination"> 118 <!--如果有上一页--> 119 {% if admin_obj.querysets.has_previous %} 120 <li><a href="?page={{ admin_obj.querysets.previous_page_number }}{% generate_filter_url admin_obj %}" 121 aria-label="Previous"><span aria-hidden="true">«</span></a></li> 122 {% else %} 123 <li class="disabled"> 124 <a href="#" aria-label="Previous"><span aria-hidden="true">«</span></a></li> 125 {% endif %} 126 127 <!--#分页的省略显示 kingadmin/templatetags/kingadmin_tags.py里def pag_omit(request,admin_obj):--> 128 {% pag_omit request admin_obj %} 129 130 <!--如果有下一页--> 131 {% if admin_obj.querysets.has_next %} 132 <li><a href="?page={{ admin_obj.querysets.next_page_number }}{% generate_filter_url admin_obj %}" 133 aria-label="Previous"><span aria-hidden="true">»</span></a></li> 134 {% else %} 135 <li class="disabled"><a href="#" aria-label="Previous"><span aria-hidden="true">»</span></a> 136 </li> 137 {% endif %} 138 </ul> 139 </nav> 140 </div> 141 {## ————————14PerfectCRM实现King_admin分页的省略显示————————#} 142 143 144 {% endblock %} 145 {## ————————08PerfectCRM实现King_admin显示注册表的字段表头————————#}