Фильтрация LogsEntry - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь запустить этот Queryset в Django для модели LogEntry.

logs_entry = LogEntry.objects.filter(content_type_id = ContentType.objects.get_for_model(Regime).pk, object_id__in = user_regimes.values_list('id', flat = True))

Но выдает эту ошибку: You might need to add explicit type casts.

Какой тип броска я могу использовать? чтобы все заработало.

1 Ответ

0 голосов
/ 04 мая 2018

У вас проблема в этой строке

user_regimes.values_list('id', flat = True)
# <QuerySet [15, 9, 16, 10, 17, 11, 12, 13, 14]>

values_list () возвращает QuerySet, а не список

Чтобы заставить это работать, используйте list() функцию

user_ids = list(user_regimes.values_list('id', flat = True))
# [15, 9, 16, 10, 17, 11, 12, 13, 14]

logs_entry = LogEntry.objects.filter(content_type_id = ContentType.objects.get_for_model(Regime).pk, object_id__in = user_ids)
...