models.py
建立數(shù)據(jù)庫(kù)模板点骑,定義要存取的數(shù)據(jù)模型
以下的典型的定義方式:
from django.db import models class Post(models.Model): title = models.CharField(max_length = 200) ... def __unicode(self): return Post.title
常用的數(shù)據(jù)字段如下:
數(shù)據(jù)字段
各個(gè)字段常用的屬性說(shuō)明
屬性說(shuō)明
定義外鍵
maker = models.Foreighnkey(Maker,on_delete = models.CASCADE)
ForeignKey是外鍵,負(fù)責(zé)指向另一張表格的主鍵primary Key
其中的參數(shù)on_delete
是設(shè)置成當(dāng)被引用的對(duì)象被刪除時(shí)拖叙,此引用對(duì)象也要一并執(zhí)行刪除的操作,其他常設(shè)置的操作如下:
- models.PROTECT: 禁止刪除并產(chǎn)生一個(gè)Excption
- models.SET_NULL: 把外鍵設(shè)置為null赂乐,但是在規(guī)劃時(shí)此字段要設(shè)置為可接受null.
- models.SET_DEFAULT: 把外鍵設(shè)置為默認(rèn)值薯鳍,但是在規(guī)劃時(shí)此字段要設(shè)置有默認(rèn)值。
- models.DO_NOTHING: 什么事都不做沪猴。
models.OneToOneField(User,on_delete = models.CASCADE)
指定的類(lèi)只能是一對(duì)一的關(guān)系辐啄。