zoukankan      html  css  js  c++  java
  • django模型中的meta选项整理

    django模型中使用Meta类表示模型的元数据,所谓元数据即是除了字段意外的数据。

    已经用到过的Meta主要选项,其他选项用到了再做补充:

    一、ordering选项

    1. 用于对查询结果对象排序;
    2. ordering的值可以是一个元组/列表,或者查询表达式,其中每一个字符串是模型中的一个字段,默认是升序排列,字段前面加上'-'表示降序排列,如果是"?"表示随机排列:  
    ordering=['index']
    ordering=['-index']
    ordering = ['-pub_date', 'author']

      也可以用查询表达式,按作者升序排序,并使空值最后排序: 

    from django.db.models import F
    
    ordering = [F('author').asc(nulls_last=True)]

    注意:当在视图中同时使用了order_by字段进行排序后,会以order_by的结果为准(相当于是重写了排序规则)

    二、db_table选项

    表示数据库中存的表的名称,数据库中默认的表名称app名称_模型名称小写:

     指定数据库名称以后:

    三、verbose_name、verbose_name_plural(单、复数)选项

     admin后台展示数据库名称展现形式:没有指定时,默认显示名称为模型类的名称;指定了verbose_name后,按照指定的显示

    四、abstract选项

    当在Meta中指定了abstract=true时,表明该模型类是抽象的基类,不会生成数据库表,不能被保存和实例化;当被其他模型类继承后,对应模型将拥有该基类的字段;

    基类的字段继承后,可以重写字段值

    五、app_lable选项

    模型在INSTALLED_APPS中的应用程序外部定义,它必须声明属于哪个应用程序

    app_label = 'myapp

  • 相关阅读:
    镜像---移除
    镜像--保存于载入
    镜像、docker、容器三者关系
    容器管理
    HBase数据读写流程(1.3.1)
    HBase表的memstore与集群memstore
    HBase预分区方法
    HBase中的TTL与MinVersion的关系
    关于HBase的memstoreFlushSize。
    hbase java api样例(版本1.3.1,新API)
  • 原文地址:https://www.cnblogs.com/canghai1024/p/13082856.html
Copyright © 2011-2022 走看看