zoukankan      html  css  js  c++  java
  • ORM的补充

    之前学习的orm的操作类似:

    create
            delete 
            update
            filter/all 
            exclude
            values
            values_list 
            get 
            first
            last
            order_by

    补充两个

    only  和 defer   

    从字面意思就可以得到 only仅仅查找这个内容

    only()-------> 仅仅查找它所规定的

    user表内有有id  name  pwd  这三列

    比如查询user表内 id 和name这两列的内容

    user_lidt = User.objects.all().only('id','name')
    defer()   -------> 查询排除选中的所有内容

    查询排除pwd'的所有内容

    user_list = User.objects.all().defer('pwd')

    当你在数据库中设置了一个字段可以选择对应的汉字的时候:

        valid_period_choices = ((1, '1天'), (3, '3天'),
                                (7, '1周'), (14, '2周'),
                                (30, '1个月'),
                                (60, '2个月'),
                                (90, '3个月'),
                                (180, '6个月'), (210, '12个月'),
                                (540, '18个月'), (720, '24个月'),
                                )

    就是给valid_period这个字段用choice设置一个可以选择的信息

    这个时候我们取值的时候如果想取初对应的字段的中文 就可以用get_字段_display()这个方法来取对应的值

    get_字段_display()

    取上面的字段的对应的中文

    对象.get_valid_period_display()

    related_name

    字段中可以加一个属性related_name  这个是关联其他表并且给自己的表 起名字的属性  以后外键表查找的时候就使用related_name 后面的值来查找

    chapter = models.ForeignKey("CourseChapter", related_name='coursesections')

    外键表CourseChapter  查找这个表就使用  releted_name 后面的值来查找

    并且关联表的时候也可以使用Content_Type来进行查找使用

  • 相关阅读:
    伺服电机常见故障分析汇总
    PLC常见四大故障及其处理方法
    Qt QString的arg()方法的使用
    Qt 线程池QThreadPool类、QRunnable类
    C++线程池的实现
    C++ List的用法
    C++语言堆栈的详细讲解
    QT中的QQueue类、C++中的queue类
    Qt platform plugin 'windows' 问题的解决方法
    电气接地的相关介绍
  • 原文地址:https://www.cnblogs.com/zhaoyunlong/p/9319932.html
Copyright © 2011-2022 走看看