对于ID =的文章,找不到ID = 1的ArticlesSkill

Kar*_*kds 4 ruby-on-rails form-for nested-attributes

我正在尝试创建一篇文章.

class Article < ActiveRecord::Base

 belongs_to :article_skill
  attr_accessible :articles_skill_attributes

  accepts_nested_attributes_for :articles_skill 
end

class ArticlesSkill < ActiveRecord::Base
  attr_accessible :description, :name

  has_many :articles

end
Run Code Online (Sandbox Code Playgroud)

这是我的形式 article/new.html.erb

 <%= article_form.fields_for :articles_skill, @article.articles_skill do |b|%>
    <label class="medium"><span class="red">*</span> Skill</label>
    <%= b.select :id, options_for_select(ArticlesSkill.all.collect{|m| [m.name, m.id]}) %>  
  <%end%>
Run Code Online (Sandbox Code Playgroud)

article_form@article表单对象的构建器.

如果我尝试保存@article对象,则显示此错误.

Couldn't find ArticlesSkill with ID=1 for Article with ID=
Run Code Online (Sandbox Code Playgroud)

bdx*_*bdx 7

几天来,我一直在努力解决这个问题.做了很多搜索..它转到了rails控制台并通过抛出异常进行搜索,而不是通过它来取得任何进展.

在这个问题上查看这个答案,了解它为什么会发生,以及可能的解决方法. 使用rails嵌套模型来创建*外部对象并同时*编辑*现有的嵌套对象?

请注意,使用此处提供的第一个选项会产生安全漏洞,如http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-3933中所述