python-dotenv と一緒にフラスコ dotenv を使用しようとしていますが、Windwos 10 に問題があることに気付きました。
Mac、Linux ではすべて正常に動作しますが、Windows ではフラスコ アプリケーションを実行すると例外が発生します。
問題はファイルにあると思われます.flaskenv
。ファイルの名前を から に変更する.flaskenv
と_flaskenv
、例外はもうありませんが、env 変数は定義されていません。このファイルを手動でロードしようとしましたが、成功しませんでした。は_flaskenv
ロードされていません。
# .flaskenv
FLASK_APP=manage.py
FLASK_ENV=development
PS D:\practice\flask-dotenv> flask run
Traceback (most recent call last):
File "C:\Users\popam\AppData\Local\Programs\Python\Python37-32\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\Users\popam\AppData\Local\Programs\Python\Python37-32\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\practice\flask-dotenv\venv\Scripts\flask.exe\__main__.py", line 9, in <module>
File "d:\practice\flask-dotenv\venv\lib\site-packages\flask\cli.py", line 894, in main
cli.main(args=args, prog_name=name)
File "d:\practice\flask-dotenv\venv\lib\site-packages\flask\cli.py", line 548, in main
load_dotenv()
File "d:\practice\flask-dotenv\venv\lib\site-packages\flask\cli.py", line 608, in load_dotenv
dotenv.load_dotenv(path)
File "d:\practice\flask-dotenv\venv\lib\site-packages\dotenv\main.py", line 309, in load_dotenv
return DotEnv(f, verbose=verbose).set_as_environment_variables(override=override)
File "d:\practice\flask-dotenv\venv\lib\site-packages\dotenv\main.py", line 138, in set_as_environment_variables
os.environ[k] = v
File "C:\Users\popam\AppData\Local\Programs\Python\Python37-32\lib\os.py", line 684, in __setitem__
self.putenv(key, value)
ValueError: embedded null character```