半尾 2010年06月10日 星期四 06:46 | 2526次浏览 | 6条评论
Django Book 里面模型内容的要点回顾。
1.数据库配置 setting.py
DATABASE_ENGINE = '' DATABASE_NAME = '' DATABASE_USER = '' DATABASE_PASSWORD = '' DATABASE_HOST = '' DATABASE_PORT = ''
2.Project和App的区别:
一个project包含很多个Django app以及对它们的配置。
技术上,project的作用是提供配置文件,比方说哪里定义数据库连接信息, 安装的app列表, TEMPLATE_DIRS ,等等。
一个app是一套Django功能的集合,通常包括模型和视图,按Python的包结构的方式存在。
例如,Django本身内建有一些app,例如注释系统和自动管理界面。 app的一个关键点是它们是很容易移植到其他project和被多个project复用。
3.创建app
python manage.py startapp books
4.定义模型:模型实际上是 django.db.models.Model 类对象的子类,是包含一些对象的容器。
继承父类的一些存取、更新、查询方法。
5.模型安装:
INSTALLED_APPS = ( # 'django.contrib.auth', # 'django.contrib.contenttypes', # 'django.contrib.sessions', # 'django.contrib.sites', 'mysite.books', )
6.数据库生成
python manage.py syncdb
7.自动添加ID字段,p.save()
8.查询对象Publisher.objects.all()
9.数据过滤Publisher.objects.filter(),","分隔参数类似AND语句, (name__contains="press") 分隔类似LIKE语句 WHERE name LIKE '%press%';
10.获取单个对象Publisher.objects.get()
11.排序Publisher.objects.order_by() 逆向排序,缺省排序class Meta:ordering = ['name']
12.连锁查询:即多条件查询
13.限制返回数据,利用索引和切片
14.更新多个对象:Publisher.objects.update()
15.删除对象,对象的delete()方法
16.再增加一条,设置字段可选blank = True
设置日期型和数字型字段可选null = True, blank = True
感受:充分利用了Python类的特点,把数据库的一些数据表操作转换为Pyhon类继承定义,对象组合,查询方法应用。避免重用。分离数据模型(Model)和视图(Views)处理方法。
疑惑:定义了模型,视图中如何对模型进行流程定制呢?我觉得是导入模型文件(models.py),然后根据request进行一些解决方案,最后返回response。留待Djangobook后面的章节验证。
Zeuux © 2024
京ICP备05028076号
回复 李迎辉 2010年06月10日 星期四 16:01
回复 半尾 2010年06月10日 星期四 19:09
2.
3
另
回复 李迎辉 2010年06月10日 星期四 19:35
回复 半尾 2010年06月10日 星期四 19:46
D
写Leaning book 应该不同于
当然我希
目前我在
回复 李迎辉 2010年06月10日 星期四 19:49
回复 半尾 2010年06月10日 星期四 20:01