Python 将对象列表作为django中的许多字段类型传递

Python 将对象列表作为django中的许多字段类型传递,python,django,django-models,Python,Django,Django Models,我想知道是否可以将对象列表(在本例中,blog对象列表作为manytomany对象参数传递给条目模型)。这样做并没有达到预期的效果。请帮忙 models.py class Blog(models.Model): id=models.AutoField(primary_key=True) class Entry(models.Model): id=models.AutoField(primary_key=True) blogs=models.ManyToManyField

我想知道是否可以将对象列表(在本例中,blog对象列表作为manytomany对象参数传递给条目模型)。这样做并没有达到预期的效果。请帮忙

models.py

class Blog(models.Model):
    id=models.AutoField(primary_key=True)

class Entry(models.Model):
    id=models.AutoField(primary_key=True)
    blogs=models.ManyToManyField(Blog)
views.py

def something(request):
    list=[]
    for i in range(10):
        list.append(Blog.objects.get(pk=i))
    ans=Entry.objects.filter(blogs=list)
    print(ans)
    #some other work.

您可以做的第一件事是用以下内容替换
for
迭代器:

blogs = Blog.objects.filter(id__range=[0, 10])
其次,您可以使用中的
\u使用查找功能:

ans = Entry.objects.filter(blogs__in=blogs)
因此,最终的
视图.py
可能如下所示:

def something(request):
    blogs = Blog.objects.filter(id__range=[0, 10])
    ans = Entry.objects.filter(blogs__in=blogs)
    print(ans)
    #some other work.

这很有帮助,但还有一个问题。当比较这个博客列表时,即使列表中有一个匹配的对象,它也会被返回……我只想返回与整个列表匹配的对象,或者根本不返回。你能再澄清一下吗?我很难完全理解这个问题,事实上我有一个场景,在这个场景中,我有多个我以前不知道的博客对象……它们可能是尽可能多的。所以我创建了一个这些对象的列表,现在我想检查是否存在包含所有这些博客对象的条目对象。我想我理解了,检查-看起来这就是你问题的答案,只需替换变量名。让我知道它是否有效非常感谢@Hybrid!!。。。。从昨天起我就一直在解决这个问题!。。。你真的帮了我很多:)