ホーム>source

djangoのフォームを使用して複数の画像をアップロードしようとしています。ユーザーがそれらをアップロードできるようにしましたが、フォームを検証すると、画像をアップロードする必要があるというメッセージが常に表示されますが、その request.FILES を確認できますアップロードされたすべての画像が含まれています。

これが私のフォームです:

<前>ウィズウィズ

そしてここにビュー:

<前>ウィズウィズ

メソッド class ProductForm(ModelForm): class Meta: model = models.Product fields = ['name', 'style', 'description', 'buy_url', 'price', 'currency', 'images'] error_messages = { NON_FIELD_ERRORS: { 'buy_url': "%(model_name)s's %(field_labels)s are not unique.", } } widgets = { 'description': Textarea(attrs={'cols': 80, 'rows': 10}), 'images': FileInput(attrs={'multiple': ''}) } を追加しようとしましたしかし、呼び出されることはありません。

投稿リクエストのファイルを正常に検証するにはどうすればよいですか?

ありがとう!

class CreateProductView(AuthenticatedUserView): template_name = 'myapp/product.html' def get_if_authenticated(self, request, user): form = ProductForm() return render(request, self.template_name, {"form": form}) def post_if_authenticated(self, request, user): form = ProductForm(request.POST) if form.is_valid(): product = form.save(commit=False) # Here do something with the images product.user = user product.save() return HttpResponseRedirect(reverse('myapp:actions')) return render(request, self.template_name, {"form": form})
あなたの答え
  • 解決した方法 # 1

    答えを取り消します。このサイトをサポートしたくありません。

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ Angular 6 PHPポスト