簡體   English   中英

傳遞對象列表作為Django中的manytomany字段類型

[英]passing list of objects as manytomany field type in django

我想知道是否可以傳遞對象列表(在這種情況下,博客對象列表作為manytomany對象參數傳遞給Entry模型)。 這樣做我沒有得到預期的結果。 請幫忙。

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])

其次,您可以使用__in使用查找功能:

ans = Entry.objects.filter(blogs__in=blogs)

因此,您的最終views.py可能如下所示:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM