关于get和post传送数据
用get传送数据比较危险,因为url上可以看见。但是如果一个get也不用,也不好,私密数据不要用。但是数据库上的索引之类的可以用(http仍需要加强)
关于页面的跳转
用form表单可以传数据,指定get或者post。并且可以完成跳转(这个跳转的意思是用 django里的render就行)。
but,如果用jquery的话,无论你不用ajax还是get还是post,都无法实现render的跳转。render倒是可以返回数据,但是返回的数据并不能 被显示到网页。
那么如何不用form表单 就可以传送数据 并返回 当前网页的结果呢。(说人话,就是我现在有一个表格, 比如说 1 小龙堡… 2 mlxg …。 我点击小龙堡,然后把 小龙堡 后面的信息 发送过去,并且将由此数据渲染的网页返回。 但是用jquery 的话。 实现了数据发送,但是渲染的网页 并不能返回。 可能需要 一些操作 让 jquery 处理这些数据。)
我目前的笨比方法:用get方法,把要传的数据 写到数据库里,get返回 这个数据库 一条数据的id,然后读。 这样好处是 发送了较少了冗余数据。(欠缺的知识点, xml和jQuery是如何渲染的,django只是提供了API 并没有介绍内容 。)
input中placeholder和value的区别
placeholder:占位符,仅仅显示本身不会被传递,即用jquery取val是取不到的。
而value是可以的。
django的mvt模式
最初始的web浏览器就是大名鼎鼎的tinyhttpd了。通过select来多路复用接受套接字,然后对于每一个请求创建一个进程。然后处理http请求的消息,进而返回结果(可以是静态网页,我认为cgi是不属于网页渲染的2020.5.11)。而django当然是成熟的web框架。可以自己做很多事情了。
MVT模型:model层。模型层,其实是对应数据库的操作。对于数据库的封装(用OO思想封装当然很好了,对下屏蔽具体的数据库,并且不容易出错。还方便缓存管理),就是一个表创建一个对象,然后具体的操作方法由sql封装成 成员函数 。
view层: 涉及网页IO操作。用epoll或者libvent这种,来对进行处理,并且根据url对应到具体的 程序。 django中在url 中进行定义。
template层:对网页进行渲染。比如从数据库读到用户名,然后填到网页上。(不清楚php和这个的关系,我只在知道django是如何渲染的。django是可以在html中混合编写python代码)
(网图,侵删,不过这玩意也没啥吧,毕竟都是这样。。)
jquery发送数据
2
可以看见都是通过location.href进行跳转的。当然可以用 a标签的 href来 进行 get传参数。其实有时候get也是 很好用的。 比方说你看这个博客,他后面就有一个get传递的参数。
django渲染
在 后台处理中渲染
{{}}中为变量 {%%}中为语句
没有涉及的地方
我做的这个网站没有涉及ORM,就简单的封装了几个sql语句。 也没有使用动态路由(动态路由 是 可以根据 url分给不同的函数,方便对 url后台进行管理。 你可以理解为url 设计一个树形关系。方便多人开发和后台管理)。