我正在构建一个应用程序(学习rails),允许公司/(个人)创建个人资料页面以列出他们的员工和技能,以便我的网站用户能够根据技能找到人员,这样他/她可以在一段时间内聘请他们作为合同雇员。
我有这些模型公司,员工,技能,合同,但我很困惑如何在这些模型之间建立关联以做我想要的。
是否存在与此类似的开源项目,以便我可以从中学习。
答案 0 :(得分:2)
听起来像你需要:
class Company < ActiveRecord::Base
has_many :employees
end
class Employee < ActiveRecord::Base
has_many :employeeskills
has_many :skills, :through => :employeeskills
belongs_to :company
has_many :contracts
end
class Skill < ActiveRecord::Base
has_many :employeeskills
has_many :employees, :through => :employeeskills
end
class Employeeskill < ActiveRecord::Base
belongs_to :employee
belongs_to :skill
end
class Contract < ActiveRecord::Base
belongs_to :employee
belongs_to :user
end
class User < ActiveRecord::Base
has_many :contracts
end
然后您可以要求@user.contracts
或@employee.skills
等。
希望有所帮助!
答案 1 :(得分:1)
我不确定要查看的任何开源项目,但是您是否经历过Getting Started Rails Guide?它涵盖了基本的协会。