Django は初めてなので、 Django のチュートリアルと同様に、 anIndexView
と a のテストを書きたいと思います。DetailView
FilerImageField
必須フィールド ( )を含むモデルがありますblank=False
。
そのモデルに関連するビューをテストするために、プログラムでモデル インスタンスを作成したいと考えています。
コード内を作成する方法に関するこの質問を認識しFilerImageField
ています。主張されている解決策を適用する際に遭遇する問題は、画像の所有者に関する部分を正しくすることです。
def create_exhibitor(name, image_path, active):
filename = 'file'
user = User.objects.get(username='myuser')
with open(image_path) as f:
file_obj = File(f, name=filename)
image = Image.objects.create(
owner=user,
original_filename=filename,
file=file_obj
)
return Exhibitor(name=name, image=image, active=active)
それらのテストを実行すると、次の結果が得られます。
Traceback (most recent call last):
...
DoesNotExist: User matching query does not exist.
私には、テスト データベースにユーザーがないように見えます。
だから私の質問は本当に二重です:
を含むモデルのインスタンスを作成するためにそこにユーザーが必要FilerImageField
ですか?
その場合、テスト用に作成するにはどうすればよいですか?