对应github地址:列表分页和按条件筛选

 
 
一. 列表分页
 
1. pip install django-pure-pagination
 
2. settings.py中
install app中添加'pure_pagination',
设置参数
PAGE_RANGE_DISPLAYED:总共会显示多少个page,包括省略号,包括两边和中间。下面例子中从1到100的话,这里要设为100
MARGIN_PAGES_DISPLAYED:旁边会显示多少个。
SHOW_FIRST_PAGE_WHEN_INVALID:当输入页数不合法是否要跳到第一页
 
 
 
 
3. 修改org-list.html中机构for模板标签,把all_orgs改为all_orgs.object_list
 
 
4. 修改organization/views.py如下
 
 
5. 在org-list.html中自定义分页样式
 
 
 
 
 
二. 分类筛选功能
 
 
1. 修改org-list.html中的城市代码,当用户点击某一个city时对应加上参数city的id
 
2. 后台处理这个city,在organiztion/views.py-> class OrgView添加
 
return中添加city_id
 
 
3. 当选择某一个城市进行筛选时,城市显示选中样式。需要把city_id传回html,使得知道是哪个被选中
原代码
修改为
 
3.1 此时,全部和选中的城市都会标绿,怎么解决这个问题呢
在organization/views.py中我们定义没有城市选中时,city_id为空
那么可修改org-list.html中表示"全部"的代码如下
 
 
 
 
4. 按类别进行筛选,和城市筛选类似
org-list.html中表示类别的原代码如下
 
4.1 修改views.py,在organiztion/views.py-> class OrgView添加
 
4.2 return语句中增加
 
4.3 修改前端中表示机构类别的代码为
 
相应的也可以修改城市分类中加上机构类别管理选择
 
 
4.4 此时筛选统计结果会有问题,一直显示总机构数,如果想得到按要求筛选结果的统计结果,只需要移动代码到筛选代码之后
 
 
 
三. 授课机构排名(网页右边) 
 
1. 在organiztion/views.py-> class OrgView添加hot_orgs变量
 
并且把这个变量加在return render的字典参数中,从而传递到前端网页
 
2. 在org-list.html中找到授课机构排名部分代码,发现每个机构也是一个<dl>标签,创建一个for循环模板标签,复制一个<dl>到循环中,修改机构名,地址为模板变量,删掉其他的<dl>
需要注意的是{{ forloop.counter }}这个是for循环中自动计数的变量,每循环一次,值就加1
 
 
 
四. 学习人数,课程数排序
 
1. 在organization/models.py-->CourseOrg中添加学习人数,课程数变量,然后迁移数据库
 
2. 修改org-list.html中的学习人数和课程数代码中<a>标签的href属性,以便在view函数中取到相应的sort值,前面加问号是固定写法
 
 
3. 在后台view中添加
然后添加sort到return render的字典参数中传递给前端
 
4. 修改org-list.html中学校人数和课程数代码,实现选中效果,以及和"机构类别","排序地区"之间的关联筛选

 

mxonline实战8,机构列表分页功能,以及按条件筛选功能的更多相关文章

  1. Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据

    Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据 学习目标 1.学会使用 filter 借助 Lambda 表达式过滤列表.集合.元组中的元素: 2.学会使用列表解析 ...

  2. 织梦CMS实现多条件筛选功能

    用织梦实现筛选的功能,其实主要就是运用到了织梦的高级搜索功能,然后用ajax去post替换掉本来的结果就可以了. 其实筛选的话,主要有两个问题需要解决,一个是前台的筛选实现,一个是后台根据前台的点击, ...

  3. 求解:php商品条件筛选功能你是怎么做出来的?

    求解:php商品条件筛选功能你是怎么做出来的? 2013-09-25 13:43 chenhang607 | 浏览 2756 次 资源共享 求思路或者方法,最好能有些代码 2013-09-25 14: ...

  4. python基础一 -------如何在列表字典集合中根据条件筛选数据

    如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) fi ...

  5. php商品条件筛选功能你是怎么做出来的?

    php商品条件筛选功能你是怎么做出来的? php按条件筛选商品的功能,还是比较简单的.其实就是根据不同的条件组成SQL查询条件,从数据库里查出不同的商品出来.举个例子:用户可以按价格范围.按品牌.按商 ...

  6. 利用PHP访问数据库——实现分页功能与多条件查询功能

    1.实现分页功能 <body><table width="100%" border="1">  <thead>    < ...

  7. C#&JQ仿网上商城商品条件筛选功能

    1.后台绑定: 一种案例: 根据第一级显示第二级,并带有每个二级的“全部”功能: #region 绑定区域 #region 绑定一级区域 ) <= ? : (PageIndex - )) + , ...

  8. 如何在列表,字典,集合中,根据条件筛选数据 -- Python数据结构与算法相关问题与解决技巧

    实际案例: 1.过滤掉列表 [3,9,-1,10,20,-2..]的负数 2.筛出字典{'LiLei':79,'Jim':88,'Lucy':92...}中值高于90的项 3.筛出集合 {77,89, ...

  9. 【PHP开源产品】Ecshop的商品筛选功能实现分析之一

    一.首先,说明一下为什么要对category.php文件进行分析. 原因如下: ①个人对商城类商品筛选功能的实现比较好奇: ②对商城中关于商品的数据表设计比较感兴趣.(该功能涉及到与数据库的交互,而且 ...

随机推荐

  1. go_Map

    go语言中map使用哈希表,必须可以比较相等 除了slice,map,function的内建类型都可以作为key Struct类型不包括上述字段,也可作为key map中的key是无序的 packag ...

  2. des,原理待续

    网络上转载的代码,忘记出处了请原作者见谅! des类 import java.security.*; import javax.crypto.*; /** * DES加解密算法 */ public c ...

  3. MongoServerSettings Members

    The MongoServerSettings type exposes the following members. Constructors   Name Description MongoSer ...

  4. DNS开源服务器BIND最小配置详解

    一,简介 相对于存储和大数据领域,CDN是一个相对小的领域,但行行出状元,BIND就是CDN领域的蝉联N届的状元郎.BIND是一款非常常用的DNS开源服务器,全球有90%的DNS用BIND实现.值得一 ...

  5. [Java] 通过XPath获取XML中某个节点的属性

    /** * Get PA Url * @author jzhang6 * @return url */ public String getPAUrl(){ String PAUrl = "& ...

  6. etl使用表

    select * from etl_data_map t;select * from etl_column t;select * from etl_table_def t;select * from ...

  7. Button或者ImageButton的背景设为透明或者半透明

    Button或者ImageButton的背景设为透明或者半透明 半透明<Button android:background="#e0000000" ... /> 透明& ...

  8. 关于自动ui的多个处理我的解决方案, 不知道大家怎么处理

    ( pathpp ="D:\\pyc-tools\\ms\\newdate\\maxinfo" DialogMonitorOPS.unRegisterNotification id ...

  9. Spring MVC的handlermapping之请求分发如何找到正确的Handler(BeanNameUrlHandlerMapping,SimpleUrlHandlerMapping)

    本文讲的是Spring MVC如何找到正确的handler, 前面请求具体怎么进入到下面的方法,不再细说. 大概就是Spring mvc通过servlet拦截请求,实现doService方法,然后进入 ...

  10. 仅仅 IE8 有效的 CSS hack 写法

    IE8 CSS hack 就是在属性后面加上 \9 或者 \0,代码如下: color:#FFF\0; /* IE8 */ color:#FFF\9; /* 所有IE浏览器(ie6+) */ 上面的 ...