Os.path.sep возвращает \\Os.path.sep вопрос о Windows, при визуализации шаблона
Имея проблемы с этим путем при попытке визуализации шаблона:
#1: This doesn't work:
path = os.path.join('file', 'name.html')
render_template(path)
#path is: 'file\\name.html'
# In broswer, it shows this error:
# jinja2.exceptions.TemplateNotFound: file\name.html
#2: This works:
path = os.path.join('file', 'name.html').replace('\\', '/')
render_template(path)
#path is: 'file/name.html'
Если я открываю окно file explorer и copy 'file \ name.html' из местоположения скрипта, где эта строка вызывается, она работает нормально, поэтому почему # 1 не может найти шаблон, но # 2 может?
Интересно, что в моем случае не является частью этого условия: «if path.sep in piece». path.sep - \\, а моя часть - файл \\ name.html. Итак, я знаю, что код будет работать в Linux, потому что путь.sep есть /. Это действительно неудобно из Flask, что это условие не проходит в Windows. – vincedjango