Как отобразить кверисет в Django?

Я пишу функцию, и в конце функция создает несколько объектов модели (одна и та же модель, разные значения). Я перечислил эти объекты, но я хочу перечислить только один объект с одним и тем же значением dashboard_id. Я нашел кое-что об этом, но у меня проблема с отображением в таблице.

Он работает, но не отображает значения. Как я могу решить эту проблему?

views.py

def reports_list(request):
    report_list = Reports.objects.values_list('dashboard_id', flat=True).distinct()
    context = {
        'report_list': report_list,
    }
    return render(request, "report_list.html", context)

report_list.html

<table id="table_id" class="display">
   <thead>
      <tr>
         <th>Kullanıcı</th>
         <th>Yüklenme Tarihi</th>
         <th>Görüntüle</th>
      </tr>
   </thead>
   <tbody>
      {%  for report in report_list %}
      <tr>
         <td>{{ report.user.first_name }} {{ report.user.last_name }}</td>
         <td>{{ report.created_at }}</td>
         <td>view</td>
      </tr>
      {% endfor %}
   </tbody>
</table>

для ясности: table

Я не думаю, что то, что у вас есть в вашей функции, соответствует тому, что я вижу как ваше намерение в шаблоне. Поэтому вместо этого вы можете попробовать следующее:

   def reports_list(request, dashboard_id):
        report_list = Reports.objects.filter(dashboard_id=dashboard_id).all()
        context = {
            'report_list': report_list,
        }
        return render(request, "report_list.html", context=context)

Если вы считаете, что ваша исходная функция верна, то вы забыли добавить контекст (context=context).

Вернуться на верх