欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

001.Django_Model.整理

程序员文章站 2023-09-29 09:03:30
Django001_Model.整理 Model表设计 数据定义数据存储,输出 a.定义表(信息 =字段) + 定义表关系 + (定义/限制)数据 b.通过orm等方法来,定义method来编辑原始数量来输出 __str__ 1.表设计 数据库表的属性 主键 unique_key 默认值(defau ......

django001_model.整理


model表设计

数据定义数据存储,输出
a.定义表(信息 =字段) + 定义表关系 + (定义/限制)数据
b.通过orm等方法来,定义method来编辑原始数量来输出
__str__

1.表设计

数据库表的属性
主键
unique_key
默认值(default)
null/blank
max_length

django admin的属性
verbose_name
help_text

2.表关系

foreignkey
on_delete
manytomany

3.字段的数据限制(定义)
choice
数据值的方法(数据库表里查询)

4.表的方法
1.必须写
__str__

2.字段的文字方法(简单)
def show_classes(self):
return ' | '.join([str(i) for i in self.class_list.all()])

3.字段的文字方法(对象)

def show_status(self):
"""
"""

color_dict = {
"signed": "green",
"unregistered": "red",
"studying": "pink",
"paid_in_full": "blue"
}

return mark_safe(
'<span style= "background-color: {};color: white; padding: 4px">{}</span>'.format(color_dict[self.status],
self.get_status_display()))

def show_classes(self):
return ' | '.join([str(i) for i in self.class_list.all()])

def enroll_link(self):

if not self.enrollment_set.exists():
return mark_safe('<a href={}">添加报名表</a>'.format(reverse('add_enrollment', args=(self.id,))))
else:
return mark_safe(
'<a href={}">添加</a> | <a href={}">查看</a>'.format(reverse('add_enrollment', args=(self.id,)),
reverse('enrollment', args=(self.id,))))

def __str__(self):
return self.name

5.表的meta
index
unique_together

modelform
1.表设计

数据库表的属性
主键
unique_key
默认值(default)
null/blank
max_length

django admin的属性
verbose_name
help_text

2.表关系

foreignkey
on_delete
to
related_name
manytomany


3.字段的数据限制(定义)
choice
数据值的方法

4.表的方法
__str__

5.拿到数据的值的方法


5.表的meta
index
unique_together