假设我有一个Company
,其Employees
多个Employee
,Companies
可以有多个class Employee < ActiveRecord::Base
has_and_belongs_to_many :companies
end
。
基本上我会:
class Company < ActiveRecord::Base
has_and_belongs_to_many :employees
end
和
{{1}}
但后来我对如何得到这样的东西感到困惑:
有一些我不知道的魔法吗?这个例子就是这里的演示,如果有助于你更好地解释,可以随意做出假设或改变它。
答案 0 :(得分:4)
为了让所有员工以“John”开头,您可以做(当然还有很多其他方法可以做到,但无论如何):
some_company.employees.find(:all, :conditions => "name LIKE 'John%'")
对于员工的订购,它甚至更漂亮:
class Company < ActiveRecord::Base
has_and_belongs_to_many :employees, :order => "name, email"
end
使用ActiveRecord可以做更多事情。我建议你尝试阅读http://guides.rubyonrails.org/或观看http://railscasts.com/以了解更多关于RoR的美丽=)
希望它有所帮助!