Как использовать django-filter на RawQuerySet?
У меня возникла проблема. Ошибка заключается в следующем
AttributeError at /tracker/
'RawQuerySet' object has no attribute 'all'
Это потому, что я использую django-filter на сыром наборе запросов из sql запроса (я не могу использовать фильтрацию django)
вот код, с которым у меня возникли проблемы:
def track1(request):
sql = """
select 1 as id,
p.name project,
i.title issue,
u.name,
replace(ROUND(t.time_spent/3600.0, 1)::text, '.', ',') as spent,
TO_CHAR(t.spent_at + interval '2h', 'dd.mm.yyyy HH24:MI:SS') date_spent, substring(n.note for 300) note
from issues i
left join projects p on p.id = i.project_id
left join timelogs t on t.issue_id = i.id
left join users u on u.id = t.user_id
left join notes n on n.id = t.note_id
where (t.spent_at + interval '2h') between '2022-06-01' and '2022-06-30 23:59:59'
order by 5, 1, 2
"""
user_spent_on_project = UsersSpentOnProjects.objects.raw(sql)
filter = UsersSpentOnProjectsFilter(request.GET, queryset=user_spent_on_project)
user_spent_on_project = filter.qs
context = {
'user_spent_on_project' : user_spent_on_project,
'filter' : filter
}
return render(request, 'trackApp/track1.html', context=context)
Есть ли способ преобразовать этот необработанный набор запросов во что-то, что имеет Model.objects.all()