详解Django的 create() 函数:创建对象

  • Post category:Python

Django中的create()函数用于创建数据库中某个表的记录,并将其保存到数据库中。该函数是QuerySet中的一个方法,可以与Model一起使用,用于快速创建记​​录并将其保存到数据库中。

使用方法如下:

YourModel.objects.create(**kwargs)

其中,YourModel是要创建记录的Model,kwargs为字段名和字段值。

例如,我们要向一个名为Person的模型中添加一条记录,该记录包含姓名和年龄字段:

class Person(models.Model):
    name = models.CharField(max_length=50)
    age = models.IntegerField(default=0)

那么我们可以使用以下代码创建一条新记录:

Person.objects.create(name='Tom', age=20)

create()函数会自动将记录保存到数据库中,不需要再次调用save()方法。

下面是另一个使用示例。假设我们有一个模型叫做Blog,并有一个外键关联到User模型,我们可以使用create()函数来创建一个新的Blog,并将其与一个已存在的User相关联:

class Blog(models.Model):
    name = models.CharField(max_length=255)
    user = models.ForeignKey(User, on_delete=models.CASCADE)

我们可以使用以下代码创建一个新的博客,并将其与一个已存在的User相关联:

user = User.objects.get(username='john')
Blog.objects.create(name='My blog', user=user)

在这个例子中,我们使用get()方法从User模型中获取了一个名为’john’的用户,并将其作为外键关联到新的Blog。

使用create()函数可以大大简化代码,避免手动构造对象的繁琐过程,提高开发效率。