【发布时间】:2011-06-21 12:15:36
【问题描述】:
在我的路线中,我有:
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=>"传输", :action=>"接受"}
在 rake 路由中存在这样的路由。
非常感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails routing datamapper nested-forms