Форма может быть разумной, так как она позволит вам использовать select, переключатели или другой тип поля для обновления валюты.
Однако вы можете достичь этого очень просто, используя пару ссылок, например:
В представлении:
<%= link_to '€', your_currency_update_path(curr: '€') %>
В контроллере:
def your_currency_update_action
cookies[:curr] = params[:curr]
redirect_to :back
end
Нажатие на эту ссылку приведет к попаданию в контроллер, передающий params[:curr]
и перенаправить пользователя, откуда он пришел.
Или используя форму, подобную этой:
<%= form_tag(your_currency_update_path, method: :post) do %>
<%= select_tag :curr, options_for_select([['€'], ['$']) %>
<%= submit_tag "Update Currency" %>
<% end %>
Наконец, вы можете покончить с кнопкой отправки формы, если она автоматически отправляется при изменении, используяследующее:
<%= select_tag :curr, options_for_select([['€'], ['$']) %>, onchange: "this.form.submit();" %>
Неважно, с какой страницы отправляется эта ссылка / форма, так как она всегда будет попадать в действие контроллера, которое вы решите обработать, до перенаправления назад.
Надеюсь, это поможет - дайте мне знать, как вы поживаете или если у вас есть какие-либо вопросы.