0
我有3種不同的型號是否能把連接查詢到Rails的Active Record協會
class GroupMember < ActiveRecord::Base
attr_accessible :group_id, :user_id, :owner_id
has_one :user
end
class Group < ActiveRecord::Base
attr_accessible :name, :owner, :permission
has_many :groupMembers
end
class User < ActiveRecord::Base
end
,當IM在groups_controller.rb我想實現與協會
SELECT * FROM groups
LEFT JOIN group_members ON groups.id = group_members.group_id
LEFT JOIN users ON group_members.user_id = users.id WHERE users.id = 1
或以下查詢加入查詢
Group.joins('LEFT JOIN group_members ON groups.id = group_members.group_id LEFT JOIN users ON group_members.user_id = users.id').where('users.id = ?', current_user.id);
是t他可能嗎?
Group.joins(:user_id => current_user.id)
隨着上述設計'User.find(1).groups'給ID爲1 –
的has_many用戶的所有組總是與附加多'類名s'?並belongs_to單個類名? –
是的。同樣''CamelCase'類名稱被轉換爲'snake_case'來獲得關聯名稱。有關關聯的更多信息,請參閱Rails [Active Record Associations](http://guides.rubyonrails.org/association_basics.html) – khustochka