Ответ 1
Я думаю, проблема в том, что вы положили /
в путь. Удалите /
, потому что static
находится на том же уровне, что и views.py
.
Я предлагаю сделать settings.py
на том же уровне, что и views.py
Или многие пользователи Flask предпочитают использовать __init__.py
, но я этого не делаю.
application_top/
application/
static/
english_words.txt
templates/
main.html
urls.py
views.py
settings.py
runserver.py
Если вы настроились, попробуйте следующее:
#settings.py
import os
# __file__ refers to the file settings.py
APP_ROOT = os.path.dirname(os.path.abspath(__file__)) # refers to application_top
APP_STATIC = os.path.join(APP_ROOT, 'static')
Теперь в ваших представлениях вы можете просто:
import os
from settings import APP_STATIC
with open(os.path.join(APP_STATIC, 'english_words.txt')) as f:
f.read()
Отрегулируйте путь и уровень в соответствии с вашими требованиями.