0

我有一个名为 Toy 的课程,其中的玩具要么是动物,要么是水果。

我的数据库中的一些示例,

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

当用户选择 'Animals' 时,它应该输出Jerry, Scoobie, Leslie,如果它选择 'Fruits' 它应该输出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])

当然他们不工作,任何想法我该如何进行?

4

1 回答 1

1

在不知道您的模型的情况下:

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

或者

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

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

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

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

于 2013-05-21T10:20:11.953 回答