Django ManyToManyField 跨越中间表查询的方法


Posted in Python onDecember 18, 2018

1、在 django 表中用到了 manytomany 生成了中间表 pyclub_article_column

from django.db import models

# Create your models here.

class Column(models.Model):
 id = models.AutoField(u'序号',primary_key=True,auto_created=True)
 name = models.CharField(u'名字',max_length=100)
 published = models.DateField(u'发布时间',auto_now_add=True)

 def __str__(self):
 return self.name

 class Meta:
 verbose_name = '栏目'
 verbose_name_plural = '栏目列表'
 ordering = ['id'] # 按照哪个栏目排序

class Article(models.Model):
 id = models.AutoField(u'序号',primary_key=True,auto_created=True)
 title = models.CharField(u'标题',max_length=100,default='')
 content = models.TextField(u'内容',default='')
 column = models.ManyToManyField(Column,verbose_name='归属栏目')
 published = models.DateField(u'发布时间',auto_now_add=True,null=True)

 def __str__(self):
 return self.title

 class Meta:
 verbose_name = '文章'
 verbose_name_plural = '文章列表'
 ordering = ['id'] # 按照哪个文章排序

2、生成了中间表 pyclub_article_column

+-----+------------+-----------+
| id | article_id | column_id |
+-----+------------+-----------+
| 370 | 411 | 146 |
| 371 | 412 | 146 |
| 372 | 413 | 165 |
| 373 | 414 | 158 |
| 374 | 415 | 151 |

3、我想通过column_id 获得 对应栏目列表中的所有数据列表,原先一直在怎么使用中间表这个问题上,一直搞不会,现在明白了,原来 结果集 column本身也可以作对象,那么,问题简单了

list_info = Article.objects.filter(column=id)

虽然article表中,没有column,但在django model.py通过many to many 已经建立起了对应关系,所以在view.py中,通过article objects时,可以直接使用filter进行类别查询。

以上这篇Django ManyToManyField 跨越中间表查询的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python开发的单词频率统计工具wordsworth使用方法
Jun 25 Python
python获取Linux下文件版本信息、公司名和产品名的方法
Oct 05 Python
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
Nov 05 Python
Python标准库之多进程(multiprocessing包)介绍
Nov 25 Python
在Python中使用next()方法操作文件的教程
May 24 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 Python
利用anaconda作为python的依赖库管理方法
Aug 13 Python
python IDLE添加行号显示教程
Apr 25 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
python 实现逻辑回归
Dec 30 Python
Python中的pprint模块
Nov 27 Python
Python列表list排列组合操作示例
Dec 18 #Python
python实现二维插值的三维显示
Dec 17 #Python
Python实现分段线性插值
Dec 17 #Python
Python 获取主机ip与hostname的方法
Dec 17 #Python
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
Dec 17 #Python
python样条插值的实现代码
Dec 17 #Python
解决python3 HTMLTestRunner测试报告中文乱码的问题
Dec 17 #Python
You might like
fleaphp下不确定的多条件查询的巧妙解决方法
2008/09/11 PHP
PHP goto语句简介和使用实例
2014/03/11 PHP
php实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
php定期拉取数据对比方法实例
2019/09/22 PHP
jquery的$getjson调用并获取远程的JSON字符串问题
2012/12/10 Javascript
同域jQuery(跨)iframe操作DOM(示例代码)
2013/12/13 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
浅谈Vue的基本应用
2016/12/27 Javascript
JavaScript中的子窗口与父窗口的互相调用问题
2017/02/08 Javascript
angular select 默认值设置方法
2017/06/23 Javascript
js浏览器滚动条卷去的高度scrolltop(实例讲解)
2017/07/07 Javascript
vue-router项目实战总结篇
2018/02/11 Javascript
js使用ajax传值给后台,后台返回字符串处理方法
2018/08/08 Javascript
VUE简单的定时器实时刷新的实现方法
2019/01/20 Javascript
vue.js基于v-for实现批量渲染 Json数组对象列表数据示例
2019/08/03 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
利用Python如何生成hash值示例详解
2017/12/20 Python
python代码实现ID3决策树算法
2017/12/20 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
Python实现查找数组中任意第k大的数字算法示例
2019/01/23 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
python实现从wind导入数据
2019/12/03 Python
解决Python import docx出错DLL load failed的问题
2020/02/13 Python
python_array[0][0]与array[0,0]的区别详解
2020/02/18 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
python pandas.DataFrame.loc函数使用详解
2020/03/26 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
2021/01/12 Python
Hotels.com拉丁美洲:从豪华酒店到经济型酒店的预定优惠和折扣
2019/12/09 全球购物
建筑项目策划书
2014/01/13 职场文书
运动会入场解说词
2014/02/07 职场文书
大型会议策划方案
2014/05/17 职场文书
干部四风问题整改措施思想汇报
2014/10/13 职场文书
退学证明范本3篇
2014/10/29 职场文书
商场收银员岗位职责
2015/04/07 职场文书
摩登时代观后感
2015/06/03 职场文书
浅谈pytorch中的dropout的概率p
2021/05/27 Python