私はオブジェクトを一緒に照会するのに必要な関連値のデータフレームを持っています。私は関連する値のリストをループしてそれらをオブジェクトに与え、それをリストに追加することができますが、これは私に別のクエリセットのリストを与えます。ループなしで私のタプルで一緒に読むことができ、単一のクエリーセットを得る方法はありますか?複数のタプルを与えることで単一のdjangoクエリーセットを得る方法
関連する値はhts_runとvariantです。この場合、同じバリアント値には複数のhts_run値があります。私のデータフレームは不要なhts_run値を取り除いたので、正しいhts_run値に対応する正しいバリアントがあります。ここ
は、現時点では私のコードです:
var_obj = []
for i, row in df.iterrows():
v_obj = row['variant']
var_obj.append(VariantSampleRun.objects.filter(sample=current_sample,
hts_run=row['run']).select_related('variant').order_by('variant'))
私は別の機能のためしかし、単一var_objのクエリセットを必要としています。あなただけの)
runs = [row['run'] for i, row in df.iterrows()]
var_obj = VariantSampleRun.objects.filter(sample=current_sample,
hts_run__in=runs).select_related('variant').order_by('variant')
ない(hts_run__in =が実行します)。私は基本的にrun1とrun2という2つのランを持っています。すべてのバリアントが両方のランで見つかった、私はちょうど私が望むバリアントを選択しました。たとえば、次の変種1 - RUN2、 variant1 - RUN2 variant2 - RUN1 variant2 - RUN2 variant3 -run1 variant3 - RUN2私は私が欲しいの実行のバリアントがデータフレームであるように選択した : variant1 - run1 variant2 - run1 variant3 - run2 私はこのクエリを実行すると、両方の実行からすべてのバリアントをクエリしているので、それぞれの実行に対してすべてのバリアントを取得します – trouselife