2016-05-17 2 views
0

У меня есть веб-сайт, и иногда я получаю повторяющиеся записи и просматривая журналы. Это вызвано двумя повторяющимися формами, которые отправляются в пределах 100-200 м друг от друга. Есть ли способ получить рельсы, чтобы отклонить вторую форму в такой ситуации?Обработка дубликатов форм в рельсах

ответ

0

Не совсем. Вы можете отключить кнопку «отправить» после отправки, так что это уменьшит вероятность того, что пользователь представит ее дважды.

В Rails вы можете использовать параметр disable_with, который использует jQuery для отключения кнопки после отправки.

См. Rails 4: Disable submit button after click.

2

Кроме того, чтобы отключить форму с помощью js, вы можете сгенерировать токен nonce, который может быть использован только один раз для формы. Предположим, что вы создаете критический объект для финансовой транзакции, которую вы генерируете, и сохраняете ее вместе с генерируемым объектом, который поддерживается уникальным ограничением.

Если та же самая форма отправляется в другое время, когда исключение возбуждается из-за нарушенного уникального ограничения, которое вы затем можете обработать соответствующим образом.

Смежные вопросы