zoukankan      html  css  js  c++  java
  • ORM查询

    https://www.cnblogs.com/wupeiqi/articles/5246483.html   武佩奇博客.

    #一对多操作.
    publisher =models.foreignkey(to ="Pulisher")
    
    # 在数据库中没有publisher这个字段
    # 数据库中实际生成一个publisher_id字段
    
    #多对多操作.
    books =models.manytomany(to = "Books")
    
    # 在数据库中只能通过第三张表建立多对多的关系
    
    # 1.单表增删改查
    
    # 增加:
    models.Pulibsher.objects.create(name ="沙河出版社")
    models.Publisher.objects.get(id =1)
    # 查
    models.Publisher.object.get(name ="沙河出版社")
    # 删
    models.Publisher.object.get(id=1).delete()
    
    # 改
    obj =models.Publisher.object.get(id=1)
    obj.name ="沙河出版社"
    obj.save
    
    # 2.外键增删改查操作
    
    book_obj = models.Book.objects.get(id =1)
    book_obj.publisher  #和这本书关联的出版社对象.
    
    book_obj.publisher.id #和我本书关联的出版社的ID值
    book_obj.publisher.name #和我本书关联的出版社的name值
    
    book_obj.publisher_id#和本书关联的出版社的ID值.
    
    
    # 3.多对多操作
    # 1. 查询id为1的作者都写过的书.
    auth_obj =models.Author.objects.get(id=1)
    auth_obj.books.all() #-->  和这个作者关联的所有书籍对象
    
    # 2想给作者绑定多本书
    auth_obj =models.Author.objects.get(id=1)
    auth_obj.books.set([1,2,3]) #把id是1,2,3的书和我这个作者关联上。
    
    #

      

    verbose_name

    verbose_name的意思很简单,就是给你的模型类起一个更可读的名字一般定义为中文,我们:
    verbose_name = "学校"

    verbose_name_plural

    这个选项是指定,模型的复数形式是什么,比如:
    verbose_name_plural = "学校"
    如果不指定Django会自动在模型名称后加一个’s’。

     

  • 相关阅读:
    个人项目作业
    自我介绍+软工五问
    Word Count
    个人简介+软工五问
    小学生算术题生成器
    个人项目-WC
    个人简历+软工五问
    学习有感
    学习爱我
    软件工程学习记录
  • 原文地址:https://www.cnblogs.com/mengbin0546/p/10012902.html
Copyright © 2011-2022 走看看