我有两个模型,ProjectCategory
和ProjectQuestion
。 ProjectCategory
可能有很多与之相关的问题,ProjectQuestion
只能有一个与之相关的类别。
我有一个表单让用户编辑一个问题,包括与之相关的类别(如果有的话)。但是,当我提交表单时,我收到以下错误:
Unpermitted parameter: project_category_id
但是在ProjectQuestion
控制器中我的permit方法配置如下:
params.require(:project_question).permit(:title, :project_category_id)
我无法弄清楚如何让我设置外键。到目前为止我发现的所有SO答案只显示了你在父母方面建立关系的情况,这不是我想要的。
Started PATCH "/admin/questions/2" for ::1 at 2017-04-21 16:45:19 +1000
Processing by AdminController#update_project_question as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"9Abl7Rruj/5LD4/rI/WKlQ8MQ8eY/TMVFUaw53kfFw199xFekfzgyiWZytzsJ5qHU+edNpoqhXG5xWvuzHFP7g==", "project_question"=>{"title"=>"What are the images not telling us testing", "project_category_id"=>"9"}, "commit"=>"Update Project question", "id"=>"2"}
<%= f.label 'Category' %>
<%= f.select :project_category_id, options_for_select(ProjectCategory.all.map{|s|[s.title, s.id]}) %>
ProjectCategory
模型:class ProjectCategory < ActiveRecord::Base
belongs_to :entry
has_many :project_questions
validates_presence_of :title
end
ProjectQuestion
模型:class ProjectQuestion < ActiveRecord::Base
has_many :entry_project_questions
validates_presence_of :title, :project_category_id
belongs_to :project_category
end
这是我的第一个Ruby项目,所以我还在学习,但我一直无法弄清楚我缺少什么才能让它正常工作。
答案 0 :(得分:1)
你好@Christopher Muller,
您正在通过AdminController处理请求,而您已在ProjectQuestion中放置了许可。请将代码添加到正在进行处理的AdminController中。
感谢。