Django学习笔记:Models01 模型基础&Meta类

模型Model

Django通过自定义models.py中的类的形式构造数据库,默认生成数据库的表的名称是

<app名>_<模型名>。

一个类实例就是数据表的一行记录。


查看Django执行的SQL语句:python manage.py sqlmigrate <应用名> 0001

(只是查看对照的命令,并不真正执行)

清空数据库:python manage.py flush



模型的元类Meta

元数据是模型中除了字段之外的内容,起辅助作用,比如排序方式、数据库表名等。每个模型都能使用自己的元数据,方法:在模型中添加一个Meta子类。


元类字段(常用)

db_table = xxx

设置当前模型生成的数据表名,默认为_<小写模型名>。


ordering = [<字段名1>, <字段名2>, ...]

设置该模型生成QuerySet中的对象的默认排序方式,如:

ordering = [-pub_date’, ‘name’]     #先按pub_date字段降序排列,再按name字段升序排列

跟objects.order_by功能类似。


verbose_name = xxx

设置模型对象的名称,会显示在Admin后台中,默认为小写的模型名。


verbose_name_plural = xxx

设置模型对象的复数名称,会显示在Admin后台中,默认为小写的模型名加s。



模型包

当models.py中模型很多的时候,可将模型分成几个文件分别存放。

①在应用目录中新建models文件夹,并创建__init__.py文件

②将models.py中的模型类分散到models目录下的各个.py文件中:

<模型1>.py,<模型2>.py,...

③删除models.py,并在__init__.py中导入所有的模型:

from .<模型1> import Model1, Model2

from .<模型2> import Model3, Model4, Model5

  ...

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 切换到创建项目的目录 cd C:\Users\admin\Desktop\DjangoProject创建名为pr...
    在努力中阅读 3,321评论 2 3
  • 模块间联系越多,其耦合性越强,同时表明其独立性越差( 降低耦合性,可以提高其独立性)。软件设计中通常用耦合度和内聚...
    riverstation阅读 2,097评论 0 8
  • 点我查看本文集的说明及目录。 本项目相关内容包括: 实现过程: CH7 创建在线商店 CH8 管理支付和订单 CH...
    学以致用123阅读 3,758评论 0 6
  • 文章内容大部分参考官方文档,以作者理解叙述Django中模型是你的数据的唯一的,确定的信息源.它包含你所存储数据所...
    da_yu阅读 2,084评论 0 3
  • 原文:https://my.oschina.net/liuyuantao/blog/751438 查询集API 参...
    阳光小镇少爷阅读 3,854评论 0 8