私が取り組んでいるDjangoプロジェクトでは、次のようにビューにフォームをインポートします
#views.py
from forms import SomeForm
それから私が持っているテストファイルで
#form_test.py
from app.forms import SomeForm
.
.
.
self.assertTrue(isinstance(response.context['form'], SomeForm))
isinstanceが機能しないのはなぜですか?
type()の出力を2つのオブジェクトについて調べると、次のようになります。
response.contextフォーム:期待されるフォーム:
これは、views.pyのインポートメカニズムをform_test.pyのインポートメカニズムと一致させることで修正できますが、これは間違ったアプローチのようです。
参考までに、ファイル構造は次のとおりです。
- サイト/
- manage.py
- アプリ/
- forms.py
- views.py
- テスト/
- form_test.py