我使用这个答案建立了这样的关系:Ruby on Rails has_many through self-referential following/follower relationships
所以我有以下型号:
class User < ActiveRecord::Base
has_many :is_trustings
has_many :trusted_users, :through => :is_trustings, :source => 'trusted'
has_many :trusters, :class_name => 'IsTrusting', :foreign_key => 'trusted_id'
has_many :trusting_users, :through => :trusters, :source => :user
end
&安培;
class IsTrusting < ActiveRecord::Base
belongs_to :user
belongs_to :trusted, :class_name => 'User'
end
在控制台中使用它时一切正常。 现在我想建立一个嵌套路由,允许客户端检索用户的关注者。
但它没有像我期望的那样工作......
参见我的routes.rb我写的
resources :user do
resources :is_trusting
resources :trusted_users
resources :trusting_users
end
Wich制作这样的路线:
/users/:user_id/is_trustings(.:format) is_trusting#index
我可以使用这个,因为它是中间模型
现在我想要嵌入的modelsn,但这是我得到的:
/users/:user_id/trusted_users(.:format) trusted_users#index
/users/:user_id/trusting_users(.:format) trusting_users#index
这显然不起作用,因为没有TrustedUsersController。我希望这条路线能够用于UserController。
必须有一个内置的快捷方式,例如:class_name =&gt; &#39;用户&#39;在模特......
有人知道吗? :)
答案 0 :(得分:1)
据我所知,您可以使用:controller
密钥
#....
resources :trusted_users, :controller => :users
#..
希望你要求它)