Django: экспорт CSV-файла с django_table2 - PullRequest
0 голосов
/ 21 апреля 2020

Мне нужна кнопка загрузки на странице html, которая отображает таблицу django.

Я следовал документации по django2 и этому сообщению Как экспортировать .csv с Django -Tables2? было полезно, но не смогло сделать трюк.

Я чувствую как я все сделал правильно (в соответствии с моими навыками новичка), нет ошибки, но нет кнопки загрузки.

Мне было интересно, может ли кто-нибудь помочь с этим вопросом

table.py

class AnormalTable(tables.Table):

    class Meta:
        model = stock_anormal
        template_name = "django_tables2/bootstrap4.html"
        export_formats = ['csv', 'xlsx']

view.py

@method_decorator(login_required, name='dispatch')
class PostDetailalerte_negat(LoginRequiredMixin,APIView, tables.SingleTableMixin, ExportMixin):
    def get(self, request):
        queryset = stock_negatif.objects.all()
        table =  NegatTable(queryset)

        RequestConfig(request).configure(table)
        export_format = request.GET.get("_export", None)
        if TableExport.is_valid_format(export_format):
            exporter = TableExport(export_format, table)
            return exporter.response("table.{}".format(export_format))


        return render(request, 'detailstocknegat.html', {'table':table})

html фрагмент

 <div class="d-sm-flex align-items-center justify-content-between mb-4">
                    <h1 class="h3 mb-0 text-gray-800">ITEMS IN ALERTE SAFETY STOCK LEVEL</h1>
              <div>
                  {% for format in view.export_formart %}
                      <a href="{% export_url "csv" %}" class="d-none d-sm-inline-block btn btn-sm btn-primary shadow-sm"><i class="fas fa-download fa-sm text-white-50"></i> Generate Report</a>
                       {%  endfor %}
              </div>
              </div>
              <table>
                   {% load django_tables2 %}
                {% render_table table %}


              </table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...