阅读背景:

[django]django的orm查询

来源:互联网 

models操作

参考

思路:

给publish插数据
给book插数据
给author插数据

给book_author插数据
    调用外键:     Book.publish # 这本书对应出版社的一条记录(对象)
    调用多对多键: Book.author  # 这本书绑定关系的作者的记录(queryset)
    book_obj.author.all()
    book_obj.author.add(author_obj)
    book_obj.author.remove(author_obj)

    author_obj = Author.objects.all()
    book_obj.author.add(*author_obj)
    
通过book找它的author: 
    python这本书的作者
        Author.objects.filter(book__name="python")

通过author找它的book
    龟叔出过的书的name+price(用系统自带的manytomany方法)
        Book.objects.filter(author__name="龟叔").values('name', 'price')


自定义book_author表:
    查出id=2的book的author:(两张表借助第三张表book_author取数据)
    
    方法1:
        book_obj = Book.objects.get(id=2)
        book_obj.book_author_set.all() # book_author的queryset对象
        print(book_obj.book_author_set.all()[0].author) # 查出作者.
    方法2:
        Book.objects.filter(book_author__author_id__name="龟叔").values('name','price')
思路:

给publish插数据
给book插数据
给autho



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: