Commit 68592086 authored by Dmitry Medvinsky's avatar Dmitry Medvinsky

Fix file uploads in edit form

I've removed explicit `request.form` passing to edit form in the form instance
creation. The reason for this is that if we pass `formdata` to the constructor
it considers that all the data it needs, whilst `request.form` contains no
information about uploaded files.

If we simply omit passing `request.form` around, Flask-WTF takes care about
filling the form with `request.form` as well as `request.files`, if there are
any.

Hence file uploads now work in the model edit.
parent d47b97c9
......@@ -467,7 +467,7 @@ class BaseModelView(BaseView, ActionsMixin):
"""
return self.get_form()
def create_form(self, form, obj=None):
def create_form(self, form=None, obj=None):
"""
Instantiate model creation form and return it.
......@@ -475,7 +475,7 @@ class BaseModelView(BaseView, ActionsMixin):
"""
return self._create_form_class(obj=obj)
def edit_form(self, form, obj=None):
def edit_form(self, form=None, obj=None):
"""
Instantiate model editing form and return it.
......@@ -821,7 +821,7 @@ class BaseModelView(BaseView, ActionsMixin):
if not self.can_create:
return redirect(return_url)
form = self.create_form(request.form)
form = self.create_form()
if form.validate_on_submit():
if self.create_model(form):
......@@ -854,7 +854,7 @@ class BaseModelView(BaseView, ActionsMixin):
if model is None:
return redirect(return_url)
form = self.edit_form(request.form, model)
form = self.edit_form(obj=model)
if form.validate_on_submit():
if self.update_model(form, model):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment