django 下面怎么同时取得不同id下面的文章列表

gq2018 发布于 2015/03/12 17:53
阅读 1K+
收藏 0

问题是这样的.

用django开发了一个博客.

博客分类: 新闻(id=1)   图片(id=2)  视频(id=3)  下载(id=4)

可以用  list =  Blog.objects.order_by('-id')  取得全部信息列表

也可以用:news_list = Blog.objects.filter(category=1).order_by('-id')[:8]  取得新闻id下的数据

 

如果我要是想同时取得 新闻 与 视频下的数据 怎么写?

用 data1 = Blog.objects.filter(category=[1,3]).order_by('-id')[:8]  这样的不行.data1 = Blog.objects.filter(category=1 || 3).order_by('-id')[:8] 也不行.

如果想同时取得 id 1,3 或者 1,2,3 下面的数据列表.怎么写? 多谢

 

加载中
0
focusfree
focusfree

可以这么写:   __in 存在于一个list范围内

data1 = Blog.objects.filter(category__in=[1,3]).order_by('-id')[:8]


data1 = Blog.objects.filter(category__in=[1,2,3]).order_by('-id')[:8]

0
运维咖啡吧
运维咖啡吧

Q很有用:

from django.db.models import Q

data1 = Blog.objects.filter(Q(category=1) | Q(category=3)).order_by('-id')[:8]



0
gq2018
gq2018
多谢楼上两位.
返回顶部
顶部