os.listdir показывает удаленные файлы - PullRequest
0 голосов
/ 02 июля 2019

Использование os.listdir() для получения файлов из папки и os.remove() для удаления из нее файлов, и файлы по-прежнему отображаются в списке после удаления до перезапуска сервера Django. Есть ли способ избежать перезагрузки сервера, чтобы получить «правильный» список файлов?

Иметь файл с именем pics.py с file_list, который передается через views.py и отображается в шаблоне. Ошибка появляется при запуске из браузера, через eclipse список обновляется мгновенно.

from os import listdir
from os.path import isfile, join, dirname, abspath

mypath = dirname(dirname(abspath(__file__))) + "\..\media\dump"

file_list = [f for f in listdir(mypath) if isfile(join(mypath, f))]

1 Ответ

1 голос
/ 02 июля 2019

Вам потребуется обновить file_list в функции просмотра, например,

from os import listdir
from os.path import isfile, join, dirname, abspath

def get_files():
  mypath = dirname(dirname(abspath(__file__))) + "\..\media\dump"
  return [f for f in listdir(mypath) if isfile(join(mypath, f))]

def my_view(request):
  return render(request, "template.html", {"files": get_files()})

(или эквивалентное представление на основе классов).

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