Как прочитать файл из каталога и удалить расширение при печати в django?

Я создаю веб-приложение на Django и реализовал две функции, одна для сохранения файлов csv в каталоге файлов на моем компьютере, а другая для чтения этих файлов для просмотра их на сайте.

Моя проблема в том, что я хочу читать файлы csv из каталога и отображать их, но без расширения csv, я хочу, чтобы их имена были единственным, что видно, но я продолжаю получать эту ошибку FileNotFoundError.

это функция, которая сохраняет файлы в директории

def openDataset(request):
    if request.method == "GET":
        return render(request, 'blog/upload_csv_ag.html')

    if request.FILES.get("file2") is not None:
        csv_file = request.FILES['file2']

        if not csv_file.name.endswith('.csv'):
            message='The uploaded file has to be CSV.  Please try again.'
            return render(request, 'blog/upload_csv_ag.html',{'message':message})
        else:
            save_path = 'C:/Users/user/Desktop/Fault Detection App/Uploaded_Datasets/'
            file_name = csv_file.name
            fs = FileSystemStorage(location=save_path)
            file = fs.save(file_name, csv_file)
    else:
        message='no file is uploaded'
        return render(request, 'blog/upload_csv_ag.html',{'message':message})       
    return render(request,'blog/upload_csv_ag.html',{'message':'Dataset Uploaded'})

и функция, которая считывает файлы из каталога

def read_datasets(request):
    path = r"C:/Users/user/Desktop/Fault Detection App/Uploaded_Datasets/"
    test = os.listdir(path)

    path1, dirs, files = next(os.walk(path))
    file_count = len(files)
    print(file_count)

    dataframes_list_html = []
    file_names = []
    index = []
    
    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))
        index.append(i)
        for item in test:
            if item.endswith(".csv"):
                os.remove(os.path.join(path, item))
                file_names.append(files[i])

    return render(request,'blog/view_datasets.html',{'files': file_names})

Извлечение имен файлов

Шаг 1 : итерация по директории

Более простым способом было бы просто сделать

for file in os.listdir(base_path)

Шаг 2 - удалить расширение

Вы можете использовать метод, который предложил evergreen

Шаг 3 - сохранение обработанной строки

Просто добавьте к списку имен_файлов, как вы это делаете, и верните список в контексте ответа

Чтение и отображение содержимого CSVs

На самом деле чтение и возврат содержимого CSV немного сложнее, но ваш текущий подход с использованием pandas для чтения файлов и преобразования dataframes в html-таблицы должен работать отлично. Только не забудьте вернуть список dataframes_list_html в контексте, чтобы вы могли получить к нему доступ в шаблоне

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