博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django 学习笔记(转)
阅读量:5291 次
发布时间:2019-06-14

本文共 820 字,大约阅读时间需要 2 分钟。

原文链接:https://my.oschina.net/linktime/blog/105280

例如有一下模型

from django.db import modelsclass person(models.Model):    name = CharField(max_length=30)class book(models.Model):    auther = ManyToManyField(person)

假设p为一个person对象,b为一个book对象

#添加关联b.auther.add(p)#去除关联b.auther.remove(p)#返回所有作者b.auther.all()#反向查询,返回这个人写的所有书,book即为反向查询的模型名p.book_set.all()

 

如果在models.py中

from django.db import modelsclass person(models.Model):    name = CharField(max_length=30)class book(models.Model):    #当关联同一个模型的字段大于一个时,要使用related_name参数来指定表名    auther = ManyToManyField(person,related_name="auther")     translater = ManyToManyField(person,related_name="translater")

此时反向查询p.book_set.all()不可用,取而代之的为

#返回该人写的所有书,book_set被related_name中指定的表名代替p.auther.all()#返回该人翻译的所有书p.translater.all()

 

 

转载于:https://www.cnblogs.com/justbreaking/p/7199992.html

你可能感兴趣的文章
Codeforces 962 /2错误 相间位置排列 堆模拟 X轴距离最小值 前向星点双连通分量求只存在在一个简单环中的边...
查看>>
Matrix快速幂 模板
查看>>
MySQL开启远程连接权限
查看>>
tomcat7.0.27的bio,nio.apr高级运行模式
查看>>
C#预处理器命令
查看>>
苹果手表:大方向和谷歌一样,硬件分道扬镳
查看>>
Competing Consumers Pattern (竞争消费者模式)
查看>>
HDUOJ ------1398
查看>>
cf--------(div1)1A. Theatre Square
查看>>
Android面试收集录15 Android Bitmap压缩策略
查看>>
PHP魔术方法之__call与__callStatic方法
查看>>
ubuntu 安装后的配置
查看>>
Html学习_简易个人网页制作
查看>>
angular中ng-bind指令小案例
查看>>
jqery总结
查看>>
Lodop获取客户端主网卡ip地址是0.0.0.0
查看>>
VSCODE更改文件时,提示:EACCES: permission denied的解决办法(mac电脑系统)
查看>>
web前端之路,js的一些好书(摘自聂微东 )
查看>>
【模板】对拍程序
查看>>
微信小程序开发初体验
查看>>