5.17 JLL实习日志-实现get方式过滤数据,表格形式展现在前端
来源:互联网 发布:java游戏吧 编辑:程序博客网 时间:2024/05/21 17:24
- views 里面传递全局变量的方式
data_model_label_setting.get(‘ConfirmPassword’), - 使用url+get方式传递出现了问题
action/url 区别,动作和指向链接,前者包括后者,form形式的传参数是会被忽略后面的参数部分,这次使用的get在url 上直接传值,html 代码如下
注意点是 没有办法使用action 需要使用class=’button’ 的形式给出
<div class="col-sm-3"> <a type="submit" id ='a' onlick= 'get_href()' class="button btn btn-default" style='margin:0,10px,0,0' ><i class="fa fa-search" aria-hidden="true" ></i></a> <a href="#clear" style="margin-left:10px;" class="pull-right btn btn-default clear-filter" title="clear filter">{{ ui_setting.Reset }}</a></div>
后台取值的方式也是固定的,如下
value_lower = float(request.GET.get('a','xxx'))
href=”/availability/view_get/?ab=3&cd=4” 使用get方式传
这边的href 利用js 动态传入写一个js 生成动态路由器
出现的问题是href 跳转前的值是不变化的,里面有赋值的和跳转的两个动作,我开始处理的时候使用的方法是只是有一个赋值的动作导致跳转不成功!里面还有innerHtml 的这个概念,url = encodeURI(url);是因为传入的参数还有string类型的,window.location.href=url 是实现跳转的这个动作的
$('.button').click(function(e){ e.preventDefault(); var filtervalue= document.getElementById('filters').value; var value_lower = document.getElementById('slider-snap-value-lower1').innerHTML;var value_upper = document.getElementById('slider-snap-value-upper1').innerHTML; var url = '/availability/view_get/?a='+value_lower+'&b='+value_upper+'&c='+filtervalue url = encodeURI(url); var link = document.getElementById("a"); //var link = document.getElementById("a"); //link.setAttribute('href','/availability/view_get/?a=3%b=4') link.setAttribute('href',url) window.location.href=url })
5.在view里面实现过滤的语句最后返回到前端,使用ajax实现异步刷新
在views碰到了类似于Mysql 语句
具体的有如下的几种,
exact iexact contains icontains
in gt gte lt lte startswith istartswith
endswith iendswith range year month
day week_day isnull search regex
iregex
下面具体的用法,这里的properties_instance是通过
objects.filter() 过滤得到
properties_instance =Property.objects.filter(NameUnicode__icontains=innerfilter)
Availability.objects.filter(Q(Property__in=properties_instance)&~Q(UnitRental__lt = value_upper)&~Q(UnitRental__gt = value_lower))
6.去掉汉字只剩下数字,
这边有个问题在于数据库里面的是string 类型的,但是和float 进行比较的时候会出错,比较的结果不是float的比较方式,要改动数据库的类型又觉得很麻烦,但是该怎么比较呢?
还有‘3.5-3.8’这样的符号导致最后比较的时候出现问题
views 函数的代码如下
def search_form(request): if request.method == 'GET': value_lower = float(request.GET.get('a','xxx')) value_upper = float(request.GET.get('b','xxx')) innerfilter = request.GET.get('c','xxx') print value_lower,value_upper properties_instance = Property.objects.filter(NameUnicode__icontains=innerfilter) availabilities = Availability.objects.filter(Q(Property__in=properties_instance)&~Q(UnitRental__lt = value_upper)&~Q(UnitRental__gt = value_lower)) return render_to_response('availability/view.html', {'availabilities': availabilities}, context_instance = RequestContext(request))
阅读全文
0 0
- 5.17 JLL实习日志-实现get方式过滤数据,表格形式展现在前端
- 5.3 JLL 实习日志
- 5.5 JLL 实习日志
- 5.9 JLL实习日志
- 5.27 JLL--实习日志--
- 6.5 JLL--实习日志
- 5.19 JLL--实习日志--view_availability前端和后端
- 5.11 JLL实习日志-实现download功能实现
- 5.10 JLL实习日志-实现upload 功能实现
- 5.12 JLL实习日志-实现download功能实现
- 5.12 JLL实习日志-实现Anjular Js 功能实现
- 6.22-6.27 JLL--实习日志--Ajax+js 端实现
- 7.3-7.5 JLL实习日志-实现DropDownBox的功能
- 6.16-6.19 JLL--实习日志--
- 如何用Jquery将后台数据通过表格形式展现在页面上
- 5.26 JLL--实习日志--Primary_Image+total_setting
- 6.15 JLL--实习日志--SetupNewWorkSpace on cloud9
- 7.14-7.21 JLL实习日志-DropDownBox Upgrade
- 关于数据库主键和外键(终于弄懂啦)
- Discuz!教程之如何修改附件下载次数
- Linux命令基础29-head和tail命令
- java读取openssl的pkcs8格式的aes128加密的私钥文件
- 【项目管理】需求-用户故事Invest原则
- 5.17 JLL实习日志-实现get方式过滤数据,表格形式展现在前端
- [设计模式]状态模式(State)---状态变 行为变
- 免费的论文查重网站
- 93-接收 ICMP 报文
- 2017/5/16 -- 计算机系统基础课堂笔记
- Linux守护进程简单概述
- HDU 3863 No Gambling 题解
- 常见的配置文件的头文件
- Struts1框架二之项目执行流程(源代码分析1)