- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Django 1.0 中文文档--模型语法
翻译:剑事
编写模型 1
使用模型 2
字段类型 3
字段选项 3
关系 4
模型方法 8
模型的继承 10
编写模型
一个模型是单独的明确的数据源,他包括必要的字段和数据存储行为,通常一个模型对应数据库里的一个表。
基本上:
每个模型都是django.db.models.Model的一个子类
每个模型属性都描述了一个数据库的字段
django提供了一套自动的数据库操作API
例子
这个例子定义了一个Person,有first_name 和 last_name 两个字段
Python代码
from django.db import models
class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
Person 将会创建一个数据库表,如:
Sql代码
CREATE TABLE myapp_person (
id serial NOT NULL PRIMARY KEY,
first_name varchar(30) NOT NULL,
last_name varchar(30) NOT NULL
);
一些注意
表名默认自动命名为myapp_person,当然这个也可以由我们自己自定义
ID字段是自动添加的主键字段,这个也可以自定义覆盖
生成的SQL脚本会根据使用的数据库不通而有所不同
使用模型
定义好模型后,我们需要告诉DJANGO使用他,在settings.py的INSTALLED_APPS 加入
Python代码
INSTALLED_APPS = (
#...
mysite.myapp,
#...
)
然后执行命令
manage.py syncdb.
字段
这是模型中最重要的部分,字段是定义为属性类
Python代码
class Musician(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
instrument = models.CharField(max_length=100)
class Album(models.Model):
artist = models.ForeignKey(Musician)
name = models.CharField(max_length=100)
release_date = models.DateField()
num_stars = models.IntegerField()
字段类型
每个模型里的字段都要实例化一个合适的字段类,django通过字段类确定一些信息
数据库字段类型
Django管理接口组件
最小值验证
Django提供了很多字段类型
字段选项
每个字段都有一些参数,例如CharField 需要 max_length 来指定数据库VARCHAR 列的字段长度
null
允许为空.
blank
允许为空白
choices
选择集合,如下
Python代码
YEAR_IN_SCHOOL_CHOICES = (
(FR, Freshman),
(SO, Sophomore),
(JR, Junior),
(SR, Senior),
(GR, Graduate),
)
default
默认值
help_text
在表单字段下显示的关于本字段的说明信息(管理接口)
primary_key
主键
unique
唯一约束
自动递增主键
每个模型默认有 id = models.AutoField(primary_key=True)
详细字段名
first_name = models.CharField(Persons first name, max_length=30)
如果是ForeignKey, ManyToManyField OneToOneField 这类字段的标签
sites = models.ManyToManyField(Site, verb
您可能关注的文档
- gnuradio 的python 包结构.doc
- IE无法打开的解决办法 IE无法打开二级链接.doc
- IPHONE疑难问题解答.doc
- Java练习题答案.doc
- linux下PHP配置.doc
- MBA面试问题答案翻译.doc
- openvc 播放视频avi.doc
- Photoshop常用快捷键.doc
- PHP 源代码分析.doc
- PHP 中 Include和Require的区别.doc
- EXTJS(入门篇03)Using and Creating Builds.docx
- EXTJS(入门篇04)Using Sencha Command.docx
- ExtJs学习资料40-Ext.PagingGrid分页数据表格实例.doc
- ExtJs学习资料-grid表格简单布局.doc
- Flash CS3 快捷键.doc
- H496-海贼王人物详细记录图片转载的动动画最新目录类似.doc
- Hessian 接口 Java Python.docx
- Houdini Python制作魔方动画教程.doc
- HTC one x 720d 720e 720t 官方解锁ROOT通用教程.doc
- Intel CPU型号规格大全.doc
最近下载
- 青少年人际关系与心理健康.docx VIP
- 平高集团GW4-126VI高压交流隔离开关安装使用说明书.docx VIP
- 三级养老护理员国家职业技能培训模块一项目三任务二协助老年人进行雾化吸入.pptx VIP
- 湖南省长沙2025年七年级下学期语文期末试卷含答案.pptx VIP
- 七年级语文秋季开学第一课(统编版2024):“语”你相伴,趣味无穷(快闪+15种趣味游戏).pptx VIP
- 用眼卫生公开课.pptx VIP
- 氪安全技术说明书MSDS.docx VIP
- 英文版我的暑假生活.pptx VIP
- 检验科病例讨论PPT课件.pptx VIP
- 人教版(2024新版)九年级上册化学全册教案教学设计.docx
文档评论(0)