Parameters: {"utf8"=>"✓", "authenticity_token"=>"yULNPCbrSyV/AeJqx9Phvg4yk7pWMjJ5BYpm4JVLr0SZ3zZdvEmvSUjKGqgH9XOwFEoS07wG5d9vrilsyntpCA==", "task"=>{"title"=>"smtp", "complexity"=>"high", "best_case_estimation"=>"333", "worst_case_estimation"=>"33"}, "button"=>"", "project_lead_id"=>"94", "task_module_id"=>"11"}
答案 0 :(得分:1)
它被称为“强参数”,由Rails实现,以帮助确保某些参数不被触及,除非它们应该是。查看您的参数,您有一个任务对象(所以任务表单)正在提交,因此如果您希望通过“质量分配”更新对象,则必须将这些参数列入白名单。有很多关于这个主题的文档,我强烈建议熟悉这个概念,因为它被大量使用。你想要做的是你的控制器中的以下内容:
private
def task_params
params.require(:task).permit(:complexity, :title, :best_case_estimation)
end
请务必在底部添加此内容,因为它声明私有线下的所有方法实际上都被视为“私有”方法。现在,您可以在该控制器的“创建”操作中添加类似的内容:
def create
@task = Task.new(task_params)
if @task.save
#stuff here
else
end
end