content

Laravel5.6---搜索查询 自带paginate()分页 get传参

帅比萌擦擦* 提交于 2019-11-28 00:53:41
laravel的paginate()分页,如果用post传参,点击第二页时会默认使用get,就会返回原始数据了 需要把查询数据get方式也放到paginate()分页参数中 一、路由 Route::group(['prefix'=>'help'], function (){ Route::get('/pickup/{id}', 'TaskHelpController@pickupList'); //拾金不昧 }); //id是区分1帮助他人2寻求帮助   二、视图 <div class="ibox-content"> <div class="row"> <div class="col-sm-12"> <div class="ibox float-e-margins"> <div class="ibox-content"> <form id="form_condition" class="form-search" method="get" action="{{ url('admin/help/pickup', ['id' => $is_type]) }}"> <div class="text-c "> 物品名称: <select name="pickup_goods" class="form-control inline" id="pickup_goods" style="width

Android学习之适配器ArrayAdapter SimpleAdapter

自作多情 提交于 2019-11-28 00:29:21
Adapter是个什么角色呢?其实它的作用就是View界面和数据之间的桥梁。我们可以看作是界面数据绑定的一种理解,它所操纵的数据一般都是一些比较复杂的数据,如数组,链表,数据库,集合等。 常用的适配器有: (1)ArrayAdapter; 数组作为数据源,填充的是ArrayAdapter (2)SimpleAdapter; List作为数据源,填充的是SimpleAdapter (3)SimpleCursorAdapter; 数据来源一般都是数据库查询得到的Cursor (4)自定义适配器; 为什么要定义自己的适配器呢?原因就在于,当我们想用一些其它的展现方式,或者是我们需要的,呈现方式,这是就得DIY了。首先我们定义一个类让它继承自BaseAdapter,再让它实现一里面所说的那几个方法。那么这个自定义适配器就算好了。 下面我们看个实例就明白了: 一 .ArrayAdapter 1.xml代码: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="match_parent" 4 android:layout_height="fill_parent" 5

spring全局变量引起的并发问题

我只是一个虾纸丫 提交于 2019-11-27 23:42:12
先看下面小段代码,一个controller,一个service。 controller.java代码: ........ @Autowired private XXXService xxxService; ........ @RequestMapping("/doXXX.do") public void doXXX(){ ..... xxxService.saveXXX(String content,....); ..... } XXXService.java代码: private String content; ...... private void init(){//清空请求参数 content = null; ...... } public boolean saveXXX(String content, ......){ this.init(content, ...); this.content = content; //业务逻辑处理 } 以上这段代码在访问量不构成并发时不会出现什么问题。 但当一个请求还未完成,另一个请求已经开始执行的情况下就会出现问题(并发): 第二个请求执行执行init()方法会将第一个请求的content变量设置为null或它本身的值,这样数据就被篡改了。 编码者这样写的目的是因为content等变量需要在多个方法中使用,而且变量很多

scrapy框架

≯℡__Kan透↙ 提交于 2019-11-27 22:03:44
day12 ~ scrapy详解 文章目录 @[toc] 1.scrapy 多页爬取 2.scrapy爬取详情页 3.scrapy发送post请求 4.scrapy中间件 5.下载中间件实现UA池 昨日回顾: 1.scrapy框架 五大核心组件: 1.引擎: 负责数据流传递, 各个组件之间的通信 2.spider: 定义了爬取的行为和数据解析 3.调度器: scheduler, 负责调度所有的请求 4.下载器: 负责发送网络请求, 返回响应数据 5.管道: item Pipeline —> item: 定义了要进行数据持久化的字段 pipeline: 与数据库进行交互, 将数据存储在数据库中 scrapy框架的数据流: spider --> 引擎 --> 调度器 --> 引擎 --> 下载器 --> 引擎 --> spider -->引擎 --> pipeline --> database 1.scrapy 多页爬取 # spider编码在原基础之上, 构建其他页面的url地址, 并利用scrapy.Request发起新的请求, 请求的回调函数依然是parse: page = 1 base_url = 'http://www.xiaohuar.com/list-1-%s.html' if self.page < 4: page_url = base_url%self.page

增量式与分布式

房东的猫 提交于 2019-11-27 22:03:37
day14 ~ 增量式与分布式 文章目录 @[toc] 1.redis的安装 2.基于crawlSpider的全站数据爬取 3.分布式 4.增量式 5.scrapy提高数据爬取效率 6.虚拟环境 昨日回顾: 1.redis的安装 1.将安装包解压到一个文件夹下: 如 D:\redis, 会在该文件夹下看到所有redis的文件 2.将该文件夹添加至系统环境变量中 3.在解压的文件目录的地址栏上输入cmd, 在cmd窗口中输入redis-server ./redis.windows.conf , 然后回车, 如果出现下面图片的样子说明redis安装成功了 [外链图片转存失败(img-shSyltG1-1566217990351)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1565516450167.png)] 2.基于crawlSpider的全站数据爬取 # 项目的创建 scrapy startproject projectname scrapy genspider -t crawl spidername www.baidu.com # crawlspider全站数据爬取: - CrawlSpider是一个爬虫类 , 是scrapy . spider的子类 , 功能比spider更强大 . -

用js和css实现选项卡效果

与世无争的帅哥 提交于 2019-11-27 21:25:22
1效果图: 2代码: html: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>选项卡效果</title> <link rel="stylesheet" href="../css/tab-list.css"> </head> <body> <div class="main"> <ul id="option"> <li onclick="setTab(0)">第一张</li> <li onclick="setTab(1)">第二张</li> <li class="active" onclick="setTab(2)">第三张</li> <li onclick="setTab(3)">第四张</li> </ul> <ul id="content"> <li>第一张内容</li> <li>第二张内容</li> <li class="active">第三张内容</li> <li>第四张内容</li> </ul> </div> <script src="../js/tab

工厂模式 抽象工厂模式

眉间皱痕 提交于 2019-11-27 20:08:09
昨天我们说到了简单工厂模式,今天我们来说说工厂模式,还有抽象工厂模式。 工厂模式,顾名思义,就是在简单工厂模式的基础上继续优化,前面的简单模式当数量多时要改的地方很多,而且比较分散,修改起来比较麻烦,那么我们可以继续封装下。 var BookShop=function(type,content){ if(type in BookShop.types){ return new BookShop.types[type](content); }else{ alert("未找到对象"+type); } } BookShop.types={ Book:function(content){ this.name="Book"; this.content=content; }, Newspaper:function(content){ this.name="Newspaper"; this.content=content; }, Magazine:function(content){ this.name="Magazine"; this.content=content; } }; var book=BookShop("Book","书"); var news=BookShop("Newspaper","报纸"); var mag=BookShop("Magazine","杂志"); console

写得不好 慢慢领悟吧

自闭症网瘾萝莉.ら 提交于 2019-11-27 19:49:09
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <link rel="stylesheet" href="indexl.css"> </head> <body> <div class="box"> <div class="heder"> <img src="logo.png" alt=""> </div> <div class="content"> <div class="content-left"><img src="page_1.gif" alt=""></div> <div class="content-three"> <div class="content-three1"><p> <b> Business.Co</b> is one of <a href="">ferr website templates created by</a><br>TemplateMonster.com team This

防抖(debounce)和节流(throttle)

冷暖自知 提交于 2019-11-27 19:27:41
场景说明 :一般我们在前端页面中会给元素绑定click、scroll、onmousemove、resize等事件,这些事件的执行函数如果是去发请求获取数据的话,我们无意识的连续点击或者连续滚动会给服务器带来很大的压力,因此我们需要在连续触发事件的时候设定每隔一段时间再去执行事件函数,这就是防抖和节流出现的背景。 例如: <div id="content" style="height:150px;background-color:#ccc;"></div> let content = document.getElementById('content'); function fetchData(){ console.log('我是测试数据'); } content.onmousemove = fetchData();   以上代码为div元素绑定了onmousemove事件,当鼠标经过div在其上移动时,会连续触发事件,假设事件执行函数需要去请求数据,则会一直发起请求,造成不必要的服务器压力。 1、防抖 概念 :指出发时间后在n秒内只能执行一次,若在n秒内又触发了事件,则会重新计算函数执行时间 防抖函数分为立即执行版和非立即执行版 (1)立即执行版   立即执行即触发事件后函数立即执行,然后在n秒内不能触发事件才能继续执行函数的效果

WPF的控件介绍及注意事项(2)

走远了吗. 提交于 2019-11-27 18:36:20
WPF的控件介绍及注意事项(2) 上一章讲到了布局、这点就有点类似建筑设计、第一步是出图纸、整体的结构、而第二步就是堆砌, 建筑学里面也会有很多描述, 例如砖头,水泥、玻璃、瓷板。 而在WPF中, 这一切的基础也就是控件、用于填充结构的UI控件。 WPF的控件结构 各种控件类型详解 ContentControl 类 设置内容的属性为 Content, 例如 Demo <Button Content="Hello" /> <Label Content="Hello"/> <CheckBox Content="Hello"/> 控件目录下只允许设置一次Content, 如下演示给按钮添加一个Image和一个文本显示Label, 错误如下: Demo <Button> <Image/> <Label/> </Button> 正确的使用方式: Demo <!利用我们上一章说讲到的布局容器装载在其中, 则可避免这种情形> <Button> <StackPanel> <Image/> <Label/> </StackPanel> </Button> HeaderedContentControl 类 相对于ContentControl来说、这类控件即可设置Content, 还有带标题的Header。 像比较常见的分组控件GroupBox、TabControl子元素TabItem