0

モデル:

class Car(models.Model):
    ...

class CarInstance(models.Model):
    car =  models.ForeignKey(Car)

あるクエリセットを別のクエリセット内で使用することはできませんか?好き:

data1 = Car.objects.filter(id__in = [1,3,6])
data2 = CarInstance.objects.filter(car = data1)

将来的には両方のクエリセットオブジェクトを使用する必要があります。また、CarはいくつかのCarInstanceオブジェクトを持つことができます。のような1つのクエリセットに統合することはできないと思いますdata2__data1

そして次のように循環します:

car_list = []
for i in data1:
  car_list.append(i.id)
data2 = CarInstance.objects.filter(car__in = car_list)

効果がないようです。ありがとう。

4

2 に答える 2

2

これをやりたいようです

data2 = CarInstance.objects.filter(car__id__in = [1,3,6])
于 2012-05-13T23:42:58.260 に答える
1

data1オブジェクトからIDを取得する場合は、次を使用します。

data1_id = Car.objects.filter(id__in = [1,3,6]).values_list('id', flat=True)
于 2012-05-14T05:01:00.637 に答える