然后发现使用Google搜索后默认是覆盖搜索结果而不是打开新的标签页 找了半天在浏览器没有找到设置,后来终于发现需要在谷歌搜索引擎处设置,而不是在浏览器本身设置。 ? ? 大功告成!
文章目录 1.前后台的数据传递 2.与数据库交互并返回数据的几种比较常用的方法 3.一个表单对应多个按钮解决方案 4.HTML中的表单控件及操作 5.消息框架 message使用 6.日期和时间DateField...value是显示的内容,并且后端提交后也将此作为值,其中name是后端获取时所用的如后端使用 select = request.POST['select']获取这个单选按钮的value,另外也可以用select...-这就是一个提控件,其中的type='submit'会保证点击后表单()中的内容被提交到后端。...auto_now: 这个参数的默认值为false,设置为true时,能够在保存该字段时,将其值设置为当前时间,并且每次修改model,都会自动更新。...需要注意的是,设置该参数为true时,并不简单地意味着字段的默认值为当前时间,而是指字段会被“强制”更新到当前时间,你无法程序中手动为字段赋值;如果使用django自带的admin管理器,那么该字段在admin
get是从服务器上获取数据,post是向服务器传送数据。 get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。...,所以表单提交建议使用 post 方法。...3、在input里,name 有什么作用? name 属性用于对提交到服务器后的表单数据进行标识,只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。 4、radio 如何分组?...通过name属性值的不同分组,同一组的name必须相同 5、placeholder 属性有什么作用? 在文本框中显示提示语。 6、type=hidden隐藏域有什么作用?...,在表单中插入隐藏域的目的在于收集或发送信息,以利于被处理表单的程序所使用。
$post变量中,以备接下来使用。...() 16.获取文章所属的分类目录信息(the_category) wp模板标签the_category用于在文章页或归档页的文章列表中输出当前文章所属分类, 即使有多个分类也会一并输出。...② $parents 字符串值,默认为空 指定父分类的显示方式,可选值如下: 空值:不输出父分类; multiple:父分类和子分类都是单独的链接,但处于同一个li元素中; single:不输出父分类链接...获取文章所属的标签信息(tags) wp模板标签the_tags用于在文章页输出标签链接 函数参数 ① $before 字符串值,默认值:null 在标签链接 前 显示的文本。...② $sep 字符串值,默认值:, 在每个标签链接 之间 显示的文本。 ③ $after 字符串值,默认为空 在标签链接 后 显示的文本。
在继续之前,我想提一些与Web表单处理相关的重要内容。...在最终的应用中,每页显示的数据将会大于三,但是对于测试而言,使用小数字很方便。 接下来,我需要决定如何将页码并入到应用URL中。...: 上一页的页码 有了这四个元素,我就可以生成上一页和下一页的链接并将其传入模板以渲染: @app.route('/', methods=['GET', 'POST'])@app.route('/index...主页和发现页都添加了分页链接。第一个链接标记为“Newer posts”,并指向前一页(请记住,我显示的用户动态按时间的倒序来排序,所以第一页是最新的内容)。...第二个链接标记为“Older posts”,并指向下一页的帖子。如果这两个链接中的任何一个都是None,则通过条件过滤将其从页面中省略。
比如可做可不做的功能,交互文档中未提到的细节 写Q&A list,根据自己对需求的理解,以提问的方式写下Q,在自己思考到解决方案或和产品,交互,UI确认后,写下对应的A,每一个问题尽可能单一明确,在开发过程中既当作实现方案...基于第三方库的使用 bug原因: 库本身的缺陷 多个开发者对库的使用方式的差异,导致后期维护成本增加,出现bug 方案: 使用第三方库前先看下issue list,看作者维护是否积极,大致浏览下前两页的...,由于参数或返回值可能是多种类型导致使用的错误 没有给参数默认值,参数变成undefined 常见提示: xxx is not a function 方案: 给函数的参数默认值 对函数的参数和返回值在使用时先做类型校验...,就不要提 如果单个函数不能用一段简单的描述表达,则可能需要将其拆分成多个函数 如果单个函数代码行数超过100行,则可能需要将函数内部的一些逻辑写成函数提出来 单个函数尽量只做一个操作,如果单个函数做了多个操作...提高第一次考试的成绩,减少补考的次数 把 bug 记录当成错题本 每次解决完bug,在评论中记录bug原因 分析归纳bug原因 反思总结,挖掘更深层级的原因,避免在同一个地方摔倒两次 定时回顾,下次遇到类似需求提高警惕意识
1.4.2 攻击方式 假设已有一个转账接口:https://csxiaoyao.com/sendcoin,同时支持 GET / POST,参数为:目标用户 user 和金额 number。...2.4 站点隔离(Site Isolation)策略 最开始 Chrome 划分渲染进程是以标签页为单位,所以一个标签页中多个不同源的 iframe 也会被分配到同一个渲染进程中,很容易让黑客通过 iframe...渲染进程数量和标签页的联系: 若两个标签页位于 同一浏览上下文组 (页面通过 window.opener 相互联系,如页面1通过 a 标签或 js 代码打开了页面2),且属于 同一站点 (不一定同源),...则两个标签页会被分配到同一个渲染进程中,否则分配独立的渲染进程。...服务器将其中的一个密钥作为公钥明文发送给浏览器并对外公开,而另一个作为私钥不对外公开。但非对称加密不仅效率低,且公钥公开,不能保证服务器端发送给浏览器端的数据安全。
ThreadLocal 持有用户信息) 勾选记住我,则延长登录凭证有效时间 用户登录成功,将用户信息短暂存入 Redis(1 小时) 用户登出,将凭证状态设为无效,并更新 Redis 中该用户的登录凭证信息...“普通用户” 无法看到帖子的置顶、加精、删除按钮,也无法执行相应操作 支持按照 “发帖时间” 显示 支持按照 “热度排行” 显示(Spring Quartz) 发布帖子(过滤敏感词),将其存入 MySQL...分页显示所有的帖子 查看帖子详情 权限管理(Spring Security + Thymeleaf Security) 「评论模块」 未登录用户无法使用评论功能 发布对帖子的评论(过滤敏感词),将其存入.../回复的点赞数量 详情页显示当前登录用户的点赞状态(赞过了则显示已赞) 统计我的获赞数量 权限管理(Spring Security) 「关注模块」 未登录用户无法使用关注相关功能 关注功能 取消关注功能...显示评论及相关信息 ❝评论部分前端的名称显示有些缺陷,有兴趣的小伙伴欢迎提 PR 解决~ ❞ 关于评论模块需要注意的就是评论表的设计,把握其中字段的含义,才能透彻了解这个功能的逻辑。
在 使用 Django Pagination 实现简单的分页功能 中,我们实现了一个简单的分页导航效果。...始终显示第一页和最后一页 当前页码高亮显示 显示当前页码前后几个连续的页码 如果两个页码号间还有其它页码,中间显示省略号以提示用户 类视图 ListView 由于在开发网站的过程中,有一些视图函数虽然处理的对象不同...而我们写的 IndexView 视图是一个类,为了将其转换成一个函数,只需要调用其父类中的 as_view 方法即可。...因此我们的思路是,在视图里将以上七步中所需要的数据生成,然后传递给模板在模板中渲染显示就行。整个视图的代码如下,代码实现的功能已有详细注释,就不在文章中进一步说明了。...# 关于什么是 Paginator,Page 类在 使用 Django Pagination 实现简单的分页功能:http://zmrenwu.com/post/23/ # 中已有详细说明
在使用Tornado的开发团队中,Quara和知乎是最常被提起的(参考:How-does-Quora-use-Tornado和知乎使用了哪些框架和开源库?)....况且, 在高性能服务器价格相较开发人员的薪资”不值一提”和”面向上线时间编程”的今天, 过度追求高性能, 恐怕只会弊大于利....倘若你将Tornado作为一个同步框架使用, 并认为框架能够”自主”实现高性能的话, 那我可真是无FUCK说了。...前者清除指定值, 后者清除所有....实现原理是给把两个由同一token签名过的字符串分别放置在cookie和html中, 然后在”正式”处理请求前, 解密这两个字符串然后比对token是否相同.
它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。...方法,精简 post 请求方式 封装 Get 方法,精简 get 请求方式 请求成功,配置业务状态码 全局的loading配置 VUE中axios的封装 在vue项目中,和后台交互获取数据这块,我们通常使用的是...首先我们在api.js中引入我们封装的get和post方法 /** * api接口统一管理 */ import { get, post } from '....判断用户的登录情况,并返回给我们对应的状态码 // 而后我们可以在响应拦截器中,根据状态码进行一些统一的操作。...最后,为了方便api的调用,我们需要将其挂载到vue的原型上。在main.js中 import Vue from 'vue' import App from '.
- id值可以从首页对应的ajax请求到的json串中获取 - 域名和id值拼接处一个完整的企业对应的详情页的url - 详情页的企业详情数据也是动态加载出来的...item类型的对象 - 将item类型的对象提交给管道进行持久化存储的操作 - 在管道类的process_item中要将其接受到的item对象中存储的数据进行持久化存储操作...- 请求传参 - 使用场景:如果爬取解析的数据不在同一张页面中。...- 需求:爬取站长素材中的高清图片 - 使用流程: - 数据解析(图片的地址) - 将存储图片地址的item提交到制定的管道类 - 在管道文件中自定制一个基于...,新闻标题,新闻内容,标号 - 分析:爬取的数据没有在同一张页面中。
很多客户只支持GET/POST请求,一般有两种方式模拟PUT等请求 添加_method参数 /users/1?...Method GET 非id的参数使用'?'...: imweb.v1 (我们使用此方案) 自定义Media-Type参考资料github ---- 状态码 成功 Code Method Describe 200 ALL 请求成功并返回实体资源 201...如 HTTP GET 方法来获取资源,HTTP DELETE 方法来删除资源。 第四个层次(Level 3)的 Web 服务使用 HATEOAS。在资源的表达中包含了链接信息。...例子 分页 request请求,查询user,每页显示10条,从第10条开始显示(第二页) /users?
|安全性|幂等性| |------|:---:|:---:| |GET|√|√| |POST|×|×| |PUT|×|√| |PATCH|×|√| |DELETE|×|√| 兼容 很多客户只支持GET/...GET 非id的参数使用'?'...: imweb.v1 (我们使用此方案) 自定义Media-Type参考资料github 状态码 成功 Code Method Describe 200 ALL 请求成功并返回实体资源 201 POST...如 HTTP GET 方法来获取资源,HTTP DELETE 方法来删除资源。 第四个层次(Level 3)的 Web 服务使用 HATEOAS。在资源的表达中包含了链接信息。...例子 分页 request请求,查询user,每页显示10条,从第10条开始显示(第二页) /users?
如何去创建路由规则、如何去提交表单并接收表单项的值、如何去给密码加密、如何去提取页面公共部分(相当于用户控件和母版页)等等... 下面就一步步开始吧^_^!......我们再看看控制台的输出 image.png 我们完成了GET方式提交表单并接收到了值,不错^_^!...:http://localhost:8000/subform,输入表单项并提交,可以发现url不会发生变化 image.png 改为post方式后,会发现不会跟get方式提交一样在url中出现了表单中输入并要提交的值...再回过头看看GET和POST方式接收值,从直接效果上来看 req.query:我用来接收GET方式提交参数 req.body:我用来接收POST提交的参数 req.params:两种都能接收到 ...,一个登录,两个页都判断是否有这个session,如果有,显示已登录,没有则显示一个登录按钮,点此按钮,记录session 1.首先通过npm安装这个中间件,打开package.json文件,在dependencies
.在线程组下面增加查看结果树 请求成功的情况: 请求失败的情况: 我们注意到在同一个系统中,协议+IP+端口号是不会发生改变的,所以我们需要添加HTTP请求默认值 3.添加HTTP请求默认值 当取样器中存在未配置的选项...,会直接去HTTP请求默认值配置中去取;取样器中配置了的选线不会去http请求默认值配置中取 当我们在测试列表页接口的时候,发生了错误,因为我们没有能获取到用户的登录信息,直接跳过登录进入列表页,这肯定是不行的...这个指标反映了系统在同一时间内处理业务的最大能力。TPS值越高,说明系统的处理能力越强。 在使用TPS监听器时,横坐标通常代表运行时间,而纵坐标则代表TPS值。...14.HTTP请求中post和get有什么区别? 1. 语义和使用场景 GET: 语义: 用于请求从指定的资源获取数据。...IDEMPOTENCY(幂等性) GET 是幂等的,即多次执行同一GET请求对服务器状态没有副作用。 POST 通常不是幂等的,多次执行同一POST请求可能会改变服务器状态。
,也就是数据库中 Post 记录的 id 值。...为了方便地生成上述的 URL,我们在 Post 类里定义一个 get_absolute_url 方法,注意 Post 本身是一个 Python 类,在类中我们是可以定义任何方法的。...编写详情页模板 接下来就是书写模板文件,从下载的博客模板(如果你还没有下载,请 点击这里 下载)中把 single.html 拷贝到 templates\blog 目录下(和 index.html 在同一级目录...回顾一下模板变量的用法,由于 get_absolute_url 这个方法(我们定义在 Post 类中的)返回的是 post 对应的 URL,因此这里 {{ post.get_absolute_url }...当 {% block toc %}{% endblock toc %} 中没有任何内容时,{% block toc %}{% endblock toc %} 在模板中不会显示。
见后面详细介绍 RedirectView 重新定向到其他URL 将访问"/log-in/"的用户重新定向到"/login/" TemplateView 显示Django HTML template 一般网站中使用模板显示的页...: 指定在上下文中使用的变量的名称. pk_url_kwarg: URLconf中,包含逐渐的关键字参数的名称.默认为'pk'. get_context_data:返回显示对象的上下文数据....None):返回该视图要显示的单个对象.如果提供了queryset,该queryset将作为对象的查询源,否则,将使用get_queryset().get_object()从视图的所有参数中查找pk_url_kwarg...显示表单的视图,验证错误时,重新显示表单并显示错误信息;成功时,重定向到一个新的URL....显示确认页面并删除现有对象的视图.仅当请求方法为POST时,才会删除给定的内容.如果此视图是通过GET提取的,它将显示一个确认页面,其中包含POST到同一网址的表单.
创建文章列表视图 首先我们来创建文章列表视图,在 resources/views 目录下创建一个子目录 post,然后在该目录下创建视图文件 index.blade.php,并编写视图代码如下: 在组件中通过对应的属性名访问属性值了,在 JavaScript 代码中使用需要加上 this. 前缀。...通过列表渲染显示分页数据和链接 在设置好 paginator 和 elements 属性值之后,就可以在模板中通过列表渲染和动态绑定显示文章信息和分页信息了,具体可以查看 template 标签中的代码...然后在浏览器访问 http://blog.test/post,页面显示如下: 访问其它页码: F12 打开开发者工具栏,可以在「Network」中看到对分页数据接口的异步请求: 或者在「Vue」中查看...Vue 组件数据: 如果调整为每页显示3篇文章,则可以测试下页码过多时的显示效果: 至此,我们的异步分页组件就编写完成了,你还可以将其复用到其他资源的异步分页功能中。
这里数字代表了第几篇文章,也就是数据库中 Post 记录的 id 值。...方法就是通过 app_name 来指定命名空间,命名空间具体如何使用将在下面介绍。如果你忘了在 blog\urls.py 中添加这一句,接下来你可能会得到一个 NoMatchReversed 异常。...为了方便地生成上述的 URL,我们在 Post 类里定义一个 get_absolute_url 方法,注意 Post 本身是一个 Python 类,在类中我们是可以定义任何方法的。...在同一级目录),然后改名为 detail.html。...回顾一下模板变量的用法,由于 get_absolute_url 这个方法(我们定义在 Post 类中的)返回的是 post 对应的 URL,因此这里 {{ post.get_absolute_url }