2

ユーザーのobjectIDのリストがあります

friends = ['someID', 'someID']

フレンド リストにあるこれらの objectID に関連付けられたユーザーを取得するためのクエリセットを作成しました。

u = UserAccount.objects.filter(Q(id = friends[0]) or Q(id = friends[1]))

u.to_json() 両方のオブジェクト ID がデータベースに存在するにもかかわらず、1 つの UserAccount オブジェクトのみを出力するようになりました

そのため、クエリを分離して確認したところ、各クエリセットが期待どおりに UserAccount オブジェクトを返しました。

u = UserAccount.objects.filter(Q(id = friends[0]))
v = UserAccount.objects.filter(Q(id = friends[1]))

何が間違っている可能性がありますか?「または」に何か問題がありますか?

4

2 に答える 2

3

修理:

UserAccount.objects.filter(Q(id = friends[0]) | Q(id = friends[1]))
于 2013-11-05T07:13:41.640 に答える
3

リスト内のいずれかに一致させるには、in クエリ演算子を使用できます。

UserAccount.objects.filter(id__in=friends)
于 2013-11-05T11:16:17.913 に答える