我无法通过构建获得rails 4,强大的参数来处理嵌套资源.任何建议都会非常受欢迎.
RSPEC告诉我
创建动作创建动作失败/错误:click_button"创建动作"NoMethodError:未定义的方法permit' for "create":String
# ./app/controllers/actions_controller.rb:24:inaction_params'#./ app/console/actions_controller.rb:10:in create'
# ./spec/features/creating_actions_spec.rb:16:inblock(2 levels)in'
我的浏览器告诉我:
ActionsController#中的NoMethodError为"create"创建未定义的方法`permit':String
提取的来源(第24行):
def action_params params.require(:action).permit(:title,:description)结束
动作控制器包含:
def create
@action = @project.actions.build(action_params)
if @action.save
flash[:notice] = "Action has been created."
redirect_to [@project, @action]
else
flash[:alert] = "Action has not been created."
render "new"
end
end
private
def action_params
params.require(:action).permit(:title, :description)
end
Run Code Online (Sandbox Code Playgroud)
我正在使用嵌套资源:
resources :projects do
resources :actions
end
Run Code Online (Sandbox Code Playgroud)
表格如下:
<%= form_for [@project, @action] do |f| %>
<% if @action.errors.any? %>
<div id="error_explanation" >
<h2><%= …Run Code Online (Sandbox Code Playgroud)