Django Web开发指南笔记
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 最佳实践 ...
随机推荐
- OpenSSL使用1(用OpenSSL生成自签名证书在IIS上搭建Https站点)(用于iOS的https访问)
前提: 先安装openssl,安装有两种方式,第一种直接下载安装包,装上就可运行:第二种可以自己下载源码,自己编译.这里推荐第一种. 安装包:http://slproweb.com/products/ ...
- PHP+MySQL按时间段查询记录代码
代码如下: <?php //搜索 $StarLevel = $_GET["starlevel"]; $StartDate=$_GET["StartDate" ...
- Linux内核的引导
1,当系统上电或复位时,CPU会将PC指针赋值为一个特定的地址0xFFFF0并执行该地址处的指令.在PC机中,该地址位于BIOS中,它保存在主板上的ROM或Flash中 2,BIOS运行时按照CMOS ...
- jquery 限制文本框只能输入数字
$("input[name='fangwenyudinhuishu']").keyup(function(){ var tmptxt=$(this).val(); $(this). ...
- HM编码器代码阅读(14)——帧间预測之AMVP模式(二)predInterSearch函数
简单介绍 predInterSearch基本的工作是ME(运动预计)和MC(运动补偿). 函数中有一个bTestNormalMC变量.它表示是否进行正常的MC过程,正常的MC过程就是进 ...
- hdu2955 Robberies (01背包)
转载请注明出处:http://blog.csdn.net/u012860063 题目链接:pid=2955">http://acm.hdu.edu.cn/showproblem.php ...
- Linux程序
1.如何找到一个进程的安装程序目录与启动目录 2.如何完全卸载一个程序
- GridView 获取列字段的几种途径
GridView是ASP.NET中功能强大的数据显示控件,它的RowDataBound事件为我们提供了方便的控制行.列数据的途径. 要获取当前行的某个数据列,我在实践中总结有如下几种方法: 1. Ce ...
- OPENCV中数字图像处理知识运用
cvZero():是让矩阵的值都为0,有初始化的作用,或者说清零~比如说:IplImage img=cvCreateImage(cvSize(640,480),IPL_DEPTH_8U,1);%创建一 ...
- 导出txt格式的说明书
/// <summary> /// 说明书 /// </summary> /// <returns></returns> public FileResu ...