У меня должно быть несколько кнопок отправки.
У меня есть форма, которая создает экземпляр Contact_Call.
Одна кнопка создает его как нормальный.
Другая кнопка создает его, но должна иметь другое: значение атрибута от значения по умолчанию, и это также должно установить атрибут на другой, но связанной модели, используемой в контроллере.
Как я делаю это? Я не могу изменить маршрут, так есть ли способ отправить другую переменную, которая взята [: параметрические усилители]?
И если я делаю затем, что я делаю в контроллере, настройте оператор выбора?
Вы можете создать несколько кнопок отправки и предоставить каждой из них разные значения:
<% form_for(something) do |f| %>
..
<%= f.submit 'A' %>
<%= f.submit 'B' %>
..
<% end %>
Будет выведено:
<input type="submit" value="A" id=".." name="commit" />
<input type="submit" value="B" id=".." name="commit" />
Внутри вашего контроллера значение отправленной кнопки будет идентифицировано параметром commit
. Проверьте значение, чтобы выполнить требуемую обработку:
def <controller action>
if params[:commit] == 'A'
# A was pressed
elsif params[:commit] == 'B'
# B was pressed
end
end
Однако помните, что это тесно связывает ваше представление с контроллером, что может быть не очень желательно.