Django通过集合关系查询(反向)



我有一个名为Toy的类,其中玩具是动物或水果。

从我的数据库中的一些例子,

|name|type|pk|
|Jerry|Cat|33|
|Scoobie|Dog|52|
|Leslie|Dog|73|
|Helen|Strawbery|86|
|Mark|Banana|16|

当用户选择"动物"时,它应该输出Jerry, Scoobie, Leslie,如果它选择"水果",它应该输出Helen, Mark

我需要在

下面
myDict={'Animal':'Cat' or 'Dog', 'Fruits':'Strawberry' or 'Banana'}
Toy.objects.filter(type = myDict[input])

myDict={'Animal':['Cat' ,'Dog'], 'Fruits':['Strawberry' , 'Banana']}
Toy.objects.filter(type in myDict[input])

他们当然不工作,有什么想法我该怎么做吗?

不知道你的模型是什么样子:

Toy.objects.filter(type__in=["Dog", "Cat"])

Toy.objects.filter(type__in=["Strawberry", "Banana"])

和第三(所有玩具类型是水果或动物)

Toy.objects.filter(type__in=["Dog", "Cat", "Strawberry", "Banana"])

由于您没有根据您所描述的将"animal"存储为类型,因此不需要{'Animal':[...], 'Fruit':[...]}

最新更新