所以我在Rails中有两个模型。但是,当我访问路径/seures/:id/users.json时,我没有得到与特定讲座相关的用户。我得到了所有用户。我不确定我在这个协会/路线上做错了什么,但我很感激你一路上的一点指导!据我所知,一切都应该正确设置......
讲座协会
belongs_to :organization
belongs_to :training_type
has_many :training_histories
has_many :users , through: :training_histories
accepts_nested_attributes_for :training_histories
用户关联
has_many :user_groups
has_many :groups, through: :user_groups
has_many :training_histories
has_many :lectures
has_many :lectures, through: :training_histories
belongs_to :organization
培训历史协会
belongs_to :lecture
belongs_to :user # this could be any type of user
delegate :training_type, to: :lecture
has_many :attachments
accepts_nested_attributes_for :attachments
路线
resources :training_histories do
member do
get :next
end
end
resources :lectures do
resources :users
collection do
get :calendar
end
end
到目前为止,无论我如何更改关联,只要讲座有很多用户,反之亦然,我无法在路由/讲座/:id / users上使用Angular中的资源调用获得特定用户的演讲。 JSON。
编辑:当我耙路线时,我确实得到了路线
lecture_users GET /lectures/:lecture_id/users(.:format) users#index
答案 0 :(得分:1)
首先,您的用户控制器索引操作的代码在哪里,即使您正确创建了路由和关联,仍需要创建控制器的正确代码以获得正确的结果。
第二,我在用户模型中注意到你已经两次宣讲与讲座的关联,这是不正确的
has_many :training_histories
has_many :lectures
has_many :lectures, through: :training_histories
你应该把它调整为:
has_many :training_histories
has_many :lectures, through: :training_histories