后台管理开发笔记

Python 一句话 :

// An highlighted block
 illegal = [i for i in badStr_global if i in test_value]

微信小程序 两个数组 对比去重:

// An highlighted block
var newdata;
var olddata ;
var del_url = olddata .filter(function (x) {
  return newdata.indexOf(x)<0;
})

nginx 获取访问者IP:

location / {
    proxy_pass http://127.0.0.1:*****; 
    proxy_set_header REMOTE_ADDR $remote_addr;
    #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
    access_log off;
}

//web2.py 
web.ctx.env['HTTP_REMOTE_ADDR']

bootstrapTable 服务端分页:

$(function () {//服务端搜索
	"use strict";
	$('#search-button').on('click',function(){
		console.log('search-button')
	    $("#table_js").bootstrapTable('refreshOptions',{pageNumber:1,search_kw: $('#search-keyword').val(),});  // pageNumber:1, 指定页码为第1页
	})	
	load();
});
function load(){
	$('#table_js').bootstrapTable({
	 		height: $(window).height()-160,
			//上面不要动
		    url:"/*****/",
	        method:'GET',
	        contentType : 'application/x-www-form-urlencoded',
	        dataType: "json",
			toolbar: '#toolbar', 
			showHeader:true,//设置为false以隐藏表头    
	        showFooter:false,//设置为true以显示摘要页脚行(固定也交 比如显示总数什么的最合适)    
	        showPaginationSwitch:false,//设置为true以显示分页组件的切换按钮    
	        showFullscreen:false,// 设置为true以显示全屏按钮  
			showToggle:true,//是否显示详细视图和列表视图的切换按钮
	        striped: true,                      //是否显示行间隔色
	        cache: false,                       //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
	        pagination: true,                   //是否显示分页(*)
	        sortable: true,                     //是否启用排序
	        sortOrder: "asc",                   //排序方式
	        sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
	        pageNumber: 1,                       //初始化加载第一页,默认第一页
	        pageSize: 20,                       //每页的记录行数(*)
	        pageList: [20,50,70,100,150],        //可供选择的每页的行数(*)
	        //pageList: [10, 20, 40], //如果设置了分页,设置可供选择的页面数据条数。设置为All 则显示所有记录。 
			paginationPreText: '?',//指定分页条中上一页按钮的图标或文字,这里是< 
			paginationNextText: '?',//指定分页条中下一页按钮的图标或文字,这里是>
			queryParamsType:"",
			queryParams:queryParams,
	        search: false,                       //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
	        strictSearch: true,
	        showColumns: false,                  //是否显示所有的列                   ///
	        showRefresh: false,                  //是否显示刷新按钮
	        minimumCountColumns: 2,             //最少允许的列数
	        clickToSelect: false,                //是否启用点击选中行
	        uniqueId: "id",   //每一行的唯一标识,一般为主键列                  
	        cardView: false,                    //是否显示详细视图
	        detailView: false,                  //是否显示父子表
	        paginationFirstText: "首页",
	        paginationPreText: "上一页",
	        paginationNextText: "下一页",
	        paginationLastText: "末页",
	            columns: [
	            {
	                field: 'id',
	                title: 'id',
	                searchable: false
	            },
	            {
	                field: 'region',
	                title: '*****',
					sortable:true
	            },
	            {
	                field: 'city_name',
	                title: '*****'
	            },
				{
	                field: 'name',
	                title: '*****'
	            },
				{
	                field: 'longitude',
	                title: '*****'
	            },
				{
	                field: 'latitude',
	                title: '*****'
	            },
				{
	                field: 'bg',
	                title: '*****'
	            },
				{
	                field: 'line_name',
	                title: '*****'
	            }],
				responseHandler: function (res) {  //后台返回的结果
	                console.log(res);
					var userInfo = res.rows;
					var NewData = [];
					var data = {
						total: res.total,
						rows: userInfo
					};
	
					return data;
	
	            },
				onPageChange:function(){
					console.log('onPageChange')
					initSwitch()
				}
	    });
	    /*服务端分页*/
		function queryParams(params){
	        return {
	            "pageNum": params.pageNumber,
	            "pageSize": params.pageSize,
				"limit":params.limit,//找多少条
				"offset":params.offset,//从数据库第几条记录开始
				"page":(params.offset/params.limit),
	            "id": $("#id").val(),
	        };
	    }
}
//web2.py 返回数据必须是rows分页数据、total总页数
    #pageNum 页数
    #pageSize 每页多少条
    total_result = db_ele.query("SELECT count(id) as maxid FROM table")
    total = total_result[0].maxid
    sql_metro = "select * from table where id > $pageNum*$pageSize LIMIT $pageSize"#不限制,查询所有到后台 
    obj = db_ele.query(sql_metro,{'pageNum':int(pageNum)*int(pageSize),'pageSize':int(pageSize)})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值