1.BookInfo.objects.all()

  • objects:是Manager类型的对象,用于与数据库进行交互
  • 当定义模型类时没有指定管理器,则Django会为模型类提供一个名为objects的管理器
  • 支持明确指定模型类的管理器
  • 当为模型类指定管理器后,django不再为模型类生成名为objects的默认管理器

2.管理器Manager

  • 管理器是Django的模型进行数据库的查询操作的接口,Django应用的每个模型都拥有至少一个管理器
  • 自定义管理器类主要用于两种情况
  • 情况一:向管理器类中添加额外的方法:见下面“创建对象”中的方式二
  • 情况二:修改管理器返回的原始查询集:重写get_queryset()方法

3.类方法

class BookInfo(models.Model):
省略部分代码
@classmethod
def create(cls,btitle,bpub_date):
b=BookInfo()
b.btitle=btitle
b.bpub_date=bpub_date
b.bread=
b.bcommet=
b.isDelete=False
return b b=BookInfo.create('aaa','1995-1-1') #这是直接调用类里面的方法,不是对象的方法
class BookInfo(models.Model):
省略部分代码
def create(btitle,bpub_date):
b=BookInfo()
b.btitle=btitle
b.bpub_date=bpub_date
b.bread=
b.bcommet=
b.isDelete=False
return b b=BookInfo.create('aaa','1995-1-1')#这样也可以,但是先创建的b对象,然后执行的b.create()方法
05-27 03:48