Вам не нужен дополнительный скрытый ввод.Кнопка отправки сама может передавать значение, как и любой другой ввод, когда вы отправляете форму.Если в форме есть несколько кнопок отправки, будет пропущена только нажатая.
Каждая кнопка отправки должна иметь имя и значение.
<%= form.submit "a", name: "payment_method" %>
<%= form.submit "b", name: "payment_method" %>
Кроме того, в вашем случае вы должны использовать button
вместо submit
.Это позволит вам установить значение кнопки, отличное от ее текста.
<%= form.button "", value: "a", name: "payment_method", type: "submit" %>
<%= form.button "", value: "b", name: "payment_method", type: "submit" %>