Как присвоить id элементу при нажатии на ссылку рядом с ним в Django?
Я пытаюсь присвоить идентификатор имени файла CSV, чтобы при нажатии на ссылку рядом я мог получить доступ к самому файлу CSV на другой веб-странице для его просмотра.
но я продолжаю получать эту ошибку объект 'QueryDict' не имеет атрибута 'objects'
Примечание: CSV файлы берутся из формы и сохраняются в файл на ПК, я пытаюсь получить файл с самого ПК.
Это views.py
def read_datasets(request):
file = request.POST.objects.get(id=id)
# print(file)
path = r"C:/Users/user/Desktop/Fault Detection App/Uploaded_Datasets/"
# csv_file = request.FILES['file2']
# csv_file = request.POST.get('file2')
path1, dirs, files = next(os.walk(path))
file_count = len(files)
print(file_count)
# dataframes_list_html = []
file_names = []
# file_name = csv_file.name
for i in range(file_count):
temp_df = pd.read_csv(path+files[i])
print(files[i])
# dataframes_list_html.append(temp_df.to_html(index=False))
file_names.append(files[i])
# print(dataframes_list_html)
return render(request,'blog/view_datasets.html',{'names': file_names})
def one_dataset(request):
path = r"C:/Users/user/Desktop/Fault Detection App/Uploaded_Datasets/"
path1, dirs, files = next(os.walk(path))
file_count = len(files)
print(file_count)
dataframes_list_html = []
for i in range(file_count):
temp_df = pd.read_csv(path+files[i])
print(files[i])
dataframes_list_html.append(temp_df.to_html(index=False))
return render(request, 'blog/single_dataset.html', {'dataframes':dataframes_list_html})
и файл HTML
<body>
{% for dataframe in dataframes %}
<div id="customers">
{{ dataframe|safe }}
<hr>
</div>
{% endfor %}
</body>
request.POST
- это словарь. Поэтому вы должны удалить .objects
def read_datasets(request):
file = request.POST.get("...")
...
Надеюсь, это может помочь.