Как вывести фрейм данных из views.py в html-шаблон в django?
Я создаю веб-приложение на Django, и одной из функций является то, что пользователь может загрузить набор данных и просмотреть его на другой странице. В настоящее время я пытаюсь только прочитать набор данных из файла и отобразить его на другой странице; я поместил свой файл test.csv в файл, из которого я хочу прочитать, но я продолжаю получать ошибку объект 'list' не имеет атрибута 'to html'.
Здесь views.py:
path = r"C:/Users/user/Documents/django_saved_files/"
path1, dirs, files = next(os.walk(path))
file_count = len(files)
dataframes_list = []
for i in range(file_count):
temp_df = pd.read_csv(path+files[i])
dataframes_list.append(temp_df)
dataframes_list_html = dataframes_list.to_html(index=False)
return render(request,'blog/view_datasets.html',{'Dataframe':dataframes_list_html})
И вот HTML шаблон:
<body>
<div class="container">
<h1 class="section-header">Datasets Available</h1><hr>
<div class="content-section">
Output: {{Dataframe|safe}}
</div>
</div>
</body>
Создайте список HTML данных вместо dataframes с помощью:
dataframes_list_html = []
for i in range(file_count):
temp_df = pd.read_csv(path+files[i])
dataframes_list_html.append(temp_df.to_html(index=False))
return render(request,'blog/view_datasets.html',{'dataframes': dataframes_list_html})
и затем перечислить список в шаблоне и отобразить датафреймы:
<div class="content-section">
{% for dataframe in dataframes %}
Output: {{ dataframe|safe }}
{% endfor %}
</div>