2021年5月4日
から akiyama
0件のコメント
Pythonのfastapiを使っていて気づいた事をメモ。
久しぶりにfastapi-login 1.6.0にアップデートしたらfastapiが起動出来無くなった。
エラー内容は
manager = LoginManager(SECRET, tokenUrl=”/auth/login”, use_cookie=True)
TypeError: init() got an unexpected keyword argument ‘tokenUrl’
github(MushroomMaula / fastapi_login)にアクセスして「CHANGELOG.md」を見て見ると、
manager = LoginManager(SECRET, tokenUrl="/auth/login", use_cookie=True)
から
manager = LoginManager(SECRET, token_url="/auth/login", use_cookie=True)
に変更していた…。
v1.6.0になってから変更になったんですね。
現時点で検索しても困ってる人がいないようなのでメモです。
あと、sqalchemy ormとfastapi-loginの統合サンプルが追加されてました。
pip install -r requirements.txt
python create_dotenv.py
python app.py
create_dotenv.pyで.env作るんですね。LoginManagerのSECRET作るためにos.urandom(24).hex()しなくても良くなったのは良いかも?
fatspiのチュートリアルを進めたことがある方なら、pydanticの設定をしているschemas.pyに
class Settings(BaseSettings):
secret: str # autmatically taken from environement variable
database_uri: str = "sqlite:///app.db"
token_url: str = "/auth/token"
DEFAULT_SETTINGS = Settings(_env_file=".env")
を入れて、create_dotenv.pyを最初に動作させれば良い気がした。
この統合サンプルもっと早く公開して欲しかったなぁ。