错误:名称不能为空;使用范围

时间:2014-03-26 20:23:56

标签: ruby-on-rails ruby-on-rails-4

这是一个非常简单的问题。我尝试保存评论,但我在标题中收到错误。当我使用scope将我的文件放在一个新文件夹中时,就会发生这种情况。

_form

<%= form_for(@comment, url: comments_path) do |f| %>

 <%= f.label :name %><br>
 <%= f.text_field :name %>
 ...

<%= submit_tag 'Submit', :class => 'btn btn-primary' %>

<% end %>

路由

scope module: 'admin' do 
  resources :comments
end

控制器

module Admin
 class CommentsController < ApplicationController
...

def comment_params
  params.require(:comment).permit(:name...) if params[:comment]
end

 end
end

模型

module Admin
  class Comment < ActiveRecord::Base

    validates :name, presence: true
    ...
 end
end

1 个答案:

答案 0 :(得分:1)

更新comment_params方法,如下所示:

def comment_params
  params.require(:admin_comment).permit(:name...)
end

如果您在提交表单时发现params哈希值(在服务器日志中)生成,您会注意到生成的哈希键是:admin_comment而不是:comment到期在comment下查看admin