2017-09-15 25 views
-1

我有三个模型;用户,项目,技能。我有关联的用户&技能和技能&项目。现在我想根据技能为用户分配一个项目,如果他们具有可分配项目所需的技能,否则不能。没有限制有多少用户可以在一个项目上工作。 我正在使用rails。需要开始解决问题。比较来自两个表中的数据在rails中和post中的第三个

+0

听起来像是你需要使用用户添加一个名为项目分配模式:引用和幻灯CT:引用。一旦你有了,并添加你的has_many:虽然到另外两个表,添加一个条件到一个“添加用户”的形式,只允许用户具有该项目的匹配技能。 –

回答

0

一种方法来获取可用项目的视图/用户将是添加的has_many:通过对各自使用技能表....

def User < ActiveRecord 
    belongs_to :skill 
    has_many :available_projects, through: :skill, source: :project 
end 

def Project < ActiveRecord 
    belongs_to :skill 
    has_many :available_users, through: :skill, source: :user 
end 

然后调用协会根据需要...

user.available_projects 

和...

project.available_users 
相关问题