2015-12-05 8 views
-1

В моих транзакциях Контроллер У меня есть действие «пополнение» и «покупка». Оба делают аналогичную вещь как «новое» действие.Ruby on Rails: два разных «новых» действия

В моих «контрольных» контроллерах у меня есть кнопка отправки, в обоих режимах эти кнопки должны приводить к «созданию» действия.

Как его установить?

+0

Просьба привести пример кода для контроллеров, вашего файла маршрутов и ваших просмотров. – tompave

ответ

1

Самый простой способ - использовать ту же форму в обоих местах.

В контроллере для каждого действия создайте новую транзакцию с любыми атрибутами , которые необходимы для этого, основываясь на покупке или покупке.

def topup 
    ... 
    @transaction = Transaction.new 
end 

def purchase 
    ... 
    @transaction = Transaction.new 
end 

Тогда в представлениях

<%= form_for @transaction do |form| %> 
... needed fields 
<% end %> 
1

Вы можете установить form action url самостоятельно. Просто укажите параметр :url для двух форм.

Пример:

<%= form_for :your_resource, url: create_path do |f| %> 
    ... 
<%= end %> 

Вы должны добавить create_path также в вашем routes.rb конечно.

post 'create', as: create # <= This is just an example for your routes! 

The form helpers подробно описаны в Docs.

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