В моих маршрутах у меня есть:
resources :accounts do
resources :transfers
put '/transfers/:id(.:format)' => 'transfers#accept'
end
В моей модели:
class Transfer
include DataMapper::Resource
belongs_to :account
belongs_to :alias_from, "Alias"
belongs_to :alias_to, "Alias"
class Account
include DataMapper::Resource
belongs_to :user
has n, :transfers
На мой взгляд:
<% @transfers_in.each do |income|%>
Amount: <%= income.amount%> <%= income.account.currency%>
<% form_for ([???, income]), :as => :transfer, :url => {:controller=>'transfers', :action => 'accept'} do |f|%>
Choose the account <%= f.collection_select :account, @accounts, :name, :name %>
<%= f.submit :value => "Accept" %>
<% end %>
<% end %>
Как мне позвонить дляздесь, если здесь @transfers_in вызывается другой ассоциацией?
@aliases = @owner.aliases.all()
@transfers_in = @aliases.transfers_in.all()
Я пробовал что-то вроде
<% @acc = Account.all()%>
<% @trs = @acc.transfers.get(:id => income.account)%>
<% form_for ([@trs, income]), ....
, но это дало мне
Не найдено ни одного маршрута {: controller => «Transfer»,: action => «accept»}
На рейковых маршрутах такой маршрут существует.
Был бы благодарен за любую помощь.