Я ищу совет о том, как лучше всего реализовать всплывающее окно / модальное при отправке формы в Ruby / Rails.
У меня есть простая форма с кнопкой отправки, которая работает, как и ожидалось (обновлениясоответствующие поля в базе данных).
Мне выдвинули дополнительные требования: в зависимости от информации, вводимой в форму, при отправке формы должно быть модальное / всплывающее окно.Обзор различных требований для этого приведен ниже:
Когда определенные поля обновляются, но информация конфликтует с более ранним обновлением (например, поле даты обновляется, но другая дата имеетуже было установлено ранее), появится всплывающее окно / модальное сообщение с ошибкой, и при нажатии кнопки «ОК» вернется к форме с любым введенным вводом (т. е. не обновит форму).Существует три разных сценария с тремя разными типами ошибок, поэтому необходимы три разных сообщения об ошибках.
Когда некоторые поля обновляются, но другие остаются пустыми, всплывающее окно / модальное с «Вы уверены?»Тип сообщения появится.Опять же, есть три разных сценария, поэтому необходимы три разных сообщения.Там будут кнопки «Отмена» и «ОК»: «Отмена» вернется к форме с любым введенным вводом, ОК отправит форму.
Наконец, если форма обновлена без проблем (то есть ни одно из вышеперечисленного не соответствует действительности), тогда форма будет отправлена без всплывающего окна или модального сообщения (т. е. стандартное представление формы).У меня есть семь различных сценариев / требований, и я изо всех сил пытаюсь найти подходящий способ для реализации этого.Первое, что приходит на ум, это то, что будет много if-утверждений, но я чувствую, что должен быть более эффективный способ сделать это.В коде, на который я смотрел (было сделано до того, как я завладел проектом), есть несколько модалей, которые используют button_tag, но я не знаю, захочу ли я использовать тот же формат в форме.