Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 4 使用简单表单通过联接表选择多个值_Ruby On Rails 4_Simple Form_Checkboxlist_Jointable - Fatal编程技术网

Ruby on rails 4 使用简单表单通过联接表选择多个值

Ruby on rails 4 使用简单表单通过联接表选择多个值,ruby-on-rails-4,simple-form,checkboxlist,jointable,Ruby On Rails 4,Simple Form,Checkboxlist,Jointable,我有一个关于连接表和表单上的多个选择的快速问题 我在Rails应用程序(4.0)中有两个模型,一个叫做Skills,另一个叫做Opportunity。一个机会可以有许多与之相关的技能,一个技能可以与许多机会相关 由于这种关系,我创建了一个名为Opportunity\u Skills的联接表。此表只有技能id和机会id 以下是我的联想: class Skill < ActiveRecord::Base has_many :opportunity_skills has_many :op

我有一个关于连接表和表单上的多个选择的快速问题

我在Rails应用程序(4.0)中有两个模型,一个叫做Skills,另一个叫做Opportunity。一个机会可以有许多与之相关的技能,一个技能可以与许多机会相关

由于这种关系,我创建了一个名为Opportunity\u Skills的联接表。此表只有技能id和机会id

以下是我的联想:

class Skill < ActiveRecord::Base
  has_many :opportunity_skills
  has_many :opportunities, through: :opportunity_skills
end


class Opportunity < ActiveRecord::Base
  has_many :opportunity_skills
  has_many :skills, through: :opportunity_skills

  accepts_nested_attributes_for :opportunity_skills
end


class OpportunitySkill < ActiveRecord::Base
  belongs_to :opportunity
  belongs_to :skill
end
职业技能
我创建了一个opportunity“new”页面,以便用户创建新opportunity。我希望用户能够在创造新机会的同时选择多种技能。为了实现这一点,我已经使Opportunity模型接受了Opportunity技能的嵌套属性

我不知道我的表单(使用简单表单)需要什么,才能使所有不同的选项显示为复选框(技能表中的值)。任何想法或建议都很好。如果我遗漏了任何信息和/或只是没有意义,请让我知道,我可以提供更多细节

提前谢谢你的帮助

干杯


格雷厄姆

听起来你的答案可能是

这有帮助吗:?你是如何解决这个问题的?