【问题标题】:First argument in form cannot contain nil or be empty.Rails 4表单中的第一个参数不能包含 nil 或为空。Rails 4
【发布时间】:2014-11-16 17:26:18
【问题描述】:

我想创建一个 cmets 控制器。但是当 rails 渲染表单时,浏览器显示错误“表单中的第一个参数不能包含 nil 或为空”,尽管变量已定义。

有 cmets_controller

 class CommentsController < ApplicationController
        def new
        end

        def create
            @comment = current_user.comments.build(comment_params)
            if @comment.save
                redirect_to root_url
            else
                render 'static_pages/home'
            end
        end

         private

        def comment_params
          params.require(:comment).permit(:text)
        end
    end

new.html.erb

<%= form_for(@comment) do |f| %>
<%= f.text_field :text %><br><br>
<% end %>

如何解决? 对不起我的英语不好

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    修复:-

    class CommentsController < ApplicationController
      def new
        @comment = Comment.new
      end
      # ....
    end
    

    【讨论】:

    • 根据您提供的信息,很难说出原因。您可以粘贴您的new.html.erb 操作而不是异常回溯吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    相关资源
    最近更新 更多