Как фильтровать объекты по полю CharField
Я хочу фильтровать cases_alert(class) по CaseAlert.alert_type, который является CharField. Но параметр функции фильтрации не является CharField. Кто-нибудь может помочь мне исправить это? Спасибо.
class CaseAlert(models.Model):
alert_type = models.CharField(max_length=16)
cases_alerts = CaseAlert.objects.all().prefetch_related('reports').filter(CaseAlert.alert_type.in_(['u1'])).order_by(CaseAlert.alert_key)
Вы можете фильтровать с помощью:
CaseAlert.objects.prefetch_related('reports').filter(
alert_type__in=['u1']
).order_by('alert_key')
Если список содержит только один элемент, не следует использовать __in
поиск [Django-doc]:
CaseAlert.objects.prefetch_related('reports').filter(
alert_type='u1'
).order_by('alert_key')