[Python]from importでモジュール名やクラス名が被ってしまった場合の対応
Pythonでimportを使いモジュールやクラスをインポートした時に他でインポートしていたものとクラス名やモジュール名が被ってしまった場合の対応方法について。
as で解決
from app_a.models import Post as PostA from app_b.models import Post as PostB
こんな感じでasの後ろに自分で名前を付けることができます。
あとは同スクリプト内ではPostAやPostBとして使うことで名前の重複を回避できます。
Djangoで複数のアプリケーションを1つにまとめてサイトマップを作成するスクリプトを書いていたのですが、複数のアプリケーションにまたがってクラス名が同一のものが散見されたので、どうしようかと思っていたらasが活躍してくれました。