chevron_left

メインカテゴリーを選択しなおす

cancel
きり丸
フォロー
住所
未設定
出身
未設定
ブログ村参加

2022/07/22

arrow_drop_down
  • MissingGreenletが起きたときの対応

    処理高速化のためにSQLAlchemyを非同期処理で使用していると、気を付けないとMissingGreenletというエラーが発生します。その対策をブログにします。 環境 Python 3.12.3 sqlalchemy 2.0.30 ゴール AsyncSessionを使用している最中に、次のエラーが出たときの対応を記載する。 sqlalchemy.exc.MissingGreenlet: greenlet_spawn has not been called; can't call await_only() here. Was IO attempted in an unexpected pla…

  • 【Git】マージ済みのリモートブランチをローカルブランチから削除する

    Gitでブランチを切って開発しているとローカルブランチはすぐに複数増えてしまいます。今回の記事では、リモートリポジトリが存在しない場合にローカルブランチもワンライナーで削除するためのメモ。 環境 Git 2.34.1 WSL Ubuntu 22.04.4 LTS ゴール マージや削除されたリモートリポジトリがある場合、ローカルのリポジトリも削除するのをワンライナーで行う。 コマンド # マージ済(ローカル修正がない場合)のみ削除 git fetch --prune && git branch -vv grep 'gone]' awk '{print $1}' xargs git b…

  • FastAPIのHTTPExcrptionはログに出しても空文字列の可能性がある

    FastAPIでHTTPExceptionをログに出力しようとした時のメモ。 環境 Python 3.12.3 FastAPI 0.103.1 0.110.0 対応 少し古いFastAPIのライブラリなら、reprを使用してシリアライズしてください。もし、strで検証しても空文字列でなければ、そのままでも問題ありません。 from fastapi import HTTPException exc = HTTPException(status_code=404, detail='NOT_FOUND') print(exc) # '' # 空文字列の可能性がある # 404: NOT_FOUND …

  • Pythonのjinja2でマルチパートメールのテンプレートを取得する

    Pythonでマルチパートメールを送る方法をブログにしました。しかし、前回の記事はファイルからテンプレートを取得していないので、マルチパートメールを実質運用できません。今回はjinja2を使用してファイルからテンプレートを取得することで実運用できるようにします。 環境 Python 3.12.3 jinja2 3.1.3 MailHog v1.0.1 事前条件 前回記事をベースに、jinja2でファイルのテンプレートを取得できるようにする。 https://nainaistar.hatenablog.com/entry/multipart-mail-in-python-by-smtplib#t…

arrow_drop_down

ブログリーダー」を活用して、きり丸さんをフォローしませんか?

ハンドル名
きり丸さん
ブログタイトル
きり丸の技術日記
フォロー
きり丸の技術日記

にほんブログ村 カテゴリー一覧

商用