Django中模型(四)
五、创建对象
1、目的
向数据库中添加数据。当创建对象时,Django不会对数据库进行读写操作,当调用save()方法时,才与数据库交互,将对象保存到数据库中
2、注意
__init__方法已经在父类models.Model中使用,在自定义的模型中无法使用
3、创建方法
A、定义一个类
在models.py中写以下代码:
class Students (models.Model): #创建数据表 sname=models.CharField(max_length=20) #定义字段 sage=models.IntegerField(3) sgender=models.CharField(max_length=20) @classmethod #自定义创建对象 def createStudent(cls,name,age,gengder): stu=cls(sname=name,sage=age,sgender=gengder) return stu
在views.py文件中这样写;
from .models import Students def addstudent(requset): stu=Students.createStudent(‘tom‘,34,‘tom is good !‘)#参数顺序与创建类时cls中参数顺序对应起来 stu.save() return render(requset,‘addstudent.html‘)
B、在模型管理器里创建类
class StudentsManager(models.Manager): def creatStudent(self,name,age,content): stu=self.model() stu.sname=name stu.sage=age stu.scontent=content return stu
在调用时和第一种方法一样,在此不再赘述。