Django Web开发指南笔记
语句VS表达式
- python代码由表达式和语句组成,由解释器负责执行。
- 主要区别:表达式是一个值,它的结果一定是一个python对象;如:12,1+2,int('123')
- 结果不是对象的代码是语句,如:if、print、for
python中可变、不可变类型
- 简单类型或者标量类型,包括整数等其他数字类型,str和unicode这样的字符串类型,以及元祖都是不可变。
列表、字典、类都是可变的
python对象都有三个属性(类型、标识符、值)
标识符:运行在解释器里所有对象都有的唯一的一个标识号
*args 和 **kwargs
- 单*表示有元祖或list出现
- 两个*表示有字典出现
re.match 和 re.search
- match :只从字符串的开始与正则表达式匹配,匹配成功返回match对象,否则返回none;
- search :将字符串的所有字串尝试与正则表达式匹配,如果所有的字串都没有匹配成功,返回none,否则返回match对象;(re.search相当于perl中的默认行为)
- 然后再用match对象的group和groups方法获取匹配模式
import random vs from randow import choice
Package
http://www.crifan.com/pythonmodulevs_libraryvspackage/
python 的浅拷贝和深拷贝
http://www.tuicool.com/articles/nuQFbqe
python 动态实例属性
模板继承
` {% extends "base.html" %}
{% block content %}
{% for post in posts %}
<h2>{{ post.title }}</h2>
<p>{{ post.timestamp }}</p>
<p>{{ post.body }}</p>
{% endfor %}
{% endblock %}
`
Django模型层Meta内部类详解
http://blog.chinaunix.net/uid-21633169-id-4374219.html
模板过滤器
- 日期
`
<p>{{ post.timestamp|date }}</p>
`
ORM关系映射
多对一: ForeignKeyField
多对多: ManyToManyField(会自动创建关系表)
一对一: OneToOneField
模型继承
- 抽象基础类
抽象类不会生成数据表
- 多表继承
被继承的类(父类)就是一张数据表,其实就是在子类和父类之间设置了一个OneToOneField。 由于这种形式的继承允许父类拥有自己的属性,Meta的继承很可能导致两端的冲突(父类的Meta会被子类继承)。
什么是鸭子类型(duck typing)
- 关心对象是什么类型,只关心行为!
- 比如在python中,有很多file-like的东西,比如StringIO,GzipFile,socket。它们有很多相同的方法,我们把它们当作文件使用。
中间件
视图与逻辑
视图(也叫控制器),时所有DjangoWeb应用程序的核心。在定义和使用模型的时候,我们是数据库管理员;在编写模板的时候,我们时界面设计师;而在编写视图的时候,我们才是真正的软件工程师。
Django Web开发指南笔记的更多相关文章
-
Django web 开发指南 no such table:
在学习django web开发指南时,发布新博客点击save后会有error提示:no such table balabalabala... 百度了一下说重新运行manage.py syncdb 就可 ...
-
Django Web开发学习笔记(1)
一.Python的标准类型 (1)bool型 >>> bool("") False >>> bool(None) False >>& ...
-
django1.8.3搭建博客——2 django web 开发指南阅读笔记
一. django框架 1 .http封装web服务的整个过程.由请求(request)和响应(response)两部分组成. 请求的内容为URL (指向文档的路径). 响应主要为正文(body ...
-
Django Web开发学习笔记(3)
1.创建一个简单视图 这章是按照DgangoBook的说明.在我们创建的工程目录下面DjangoE_1(这是我为自己的工程命名的名字)新建一个view.py的文件,并在该文件下添加如下代码 from ...
-
Django Web开发学习笔记(5)
第五部分 Model 层 创建一个app工程.app和project的区别引用DjangoBook的说法是: 一个project包含很多个Django app以及对它们的配置. 技术上,project ...
-
Django Web开发学习笔记(4)
第四章 模板篇 上一章的内容,我们将HTML的代码和Python代码都混合在了在view.py的文件下.但是这样做的坏处无疑是明显的,引用DjangoBook的说法: 对页面设计进行的任何改变都必须对 ...
-
python的内存管理机制 图解+Django Web开发学习笔记
http://www.cnblogs.com/CBDoctor/p/3781078.html http://www.cnblogs.com/vamei/p/3232088.html http://bl ...
-
[转帖]2019 简易Web开发指南
2019 简易Web开发指南 2019年即将到来,各位同学2018年辛苦了. 不管大家2018年过的怎么样,2019年还是要继续加油的! 在此我整理了个人认为在2019仍是或者将成为主流的技术 ...
-
【前端】移动端Web开发学习笔记【2】 &; flex布局
上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...
随机推荐
-
Smart3D系列教程2之 《为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧》
一.照片采集的实用概念 根据照片进行三维重建的过程中,有人没怎么遇到坑,有人被坑的不轻.可能是模型的纹理失真,模型的法线错了,模型会生成我们各种也想不到的结果,那么,是什么导致三维重建效果这么差的?是 ...
-
《大话设计模式》ruby版代码:简单工厂模式
之前有看过<ruby设计模式>,不过渐渐的都忘记了.现在买了一个大话设计模式,看起来不是那么枯燥,顺便将代码用ruby实现了一下. # -*- encoding: utf-8 -*- #运 ...
-
union 代替or的情况
技巧2:union 代替or的情况 当SQL语句中,or 条件上面有一个为子查询,并且子查询上的表与源表不同,这个时候就可以用union代替or或者你发现执行计划中的 filter 有 or 并且 o ...
-
用perl发送数据到钓鱼站
一个皮皮果的游戏很火 估计很多人想黑 偶然发现一个钓鱼站: http://ppgpergame.com/ 钓用户名与密码 抓包后发现数据会发送到: http://ppgpergame.com/db.a ...
-
Linux下deb包安装工具(附带安装搜狗输入法)
环境是在ubuntu14下的 #1.gdebi安装 使用deb安装工具gdebi,这个工具能解决所有依赖问题 sudo apt-get install gdebi #2.搜狗输入法 deb包下载地址: ...
-
luogu4360 锯木厂选址 (斜率优化dp)
设: sw[i]为1..i的w之和 sd[i]为1到i的距离 cost[i]为把第一个锯木厂建在i带来的花费 all[i,j]为把i..j所有木头运到j所需要的花费 所以$all[i,j]=cost[ ...
-
转:JDBC中关于PreparedStatement.setObject的一些细节说明
原文地址:https://blog.csdn.net/zhiyangxuzs/article/details/78657235 JDBC中PreparedStatement.setObject(ind ...
-
java.lang.IllegalStateException: Ambiguous mapping. Cannot map &#39;waterQuality
如果一个项目中有两个@RequestMapping("/xxx")完全相同就会报 java.lang.IllegalStateException 改进办法:修改@RequestM ...
-
vue webpack 打包后css背景图路径问题
最近在写vue-webpack项目时,打包后遇到了css背景图片路径报错的问题 奇怪的是,通过img标签引入的图片路径却没有问题,看来是webpack在打包后,读取css中图片的相对路径出错了. 稍微 ...
-
JAVA入门之基础语言
在上一章文章中,读者已经了解了如何搭建Java 开发环境及Java 程序的开发过程.从本篇文章开始讲解Java 的基本语言.这些基本语言的语法和其他一些编程语言相比有些是类似的,但还有很多不同之处,读 ...