Задача: На сайте необходимо сделать загрузку изображения и xml файла, модель и форма приведены ниже:
Модель:
class Image(db.Model): id = db.Column(db.Integer, primary_key=True) image_url = db.Column(db.String(255)) image_file = db.Column(db.String(255)) xml_url = db.Column(db.String(255)) xml_file = db.Column(db.String(255))
Форма:
class ImageForm(Form): image_url = StringField(validators=[URL()]) image_file = FileField(validators=[FileRequired(), FileAllowed(['jpg', 'png'])]) xml_url = StringField(validators=[URL()]) xml_file = FileField(validators=[FileAllowed(['xml'])])
При добавлении важно что бы было указано одно из полей, _url или _file, для image и xml, так же могут быть указаны все поля. Как лучше организовать такую валидацию, и как обойти то, что при отправке формы поля с файлами очищаются и нужно выбирать заново файл?
Заранее спасибо!