【问题标题】:ActionController::ParameterMissing: param is missing or the value is empty:ActionController::ParameterMissing: 参数丢失或值为空:
【发布时间】:2017-10-29 03:27:32
【问题描述】:

所以我知道有很多这样的问题,但没有人回答我的问题并解决了我的问题。所以,我有这个问题大约一个星期,我无法解决它!我对 ruby​​ on rails 真的很陌生,但我已经尝试了一切。我有这个(ActionController::ParameterMissing: 参数丢失或值为空:意见),我不知道如何解决它。所有的代码都有(我是新手,所以很简单):

意见控制器:

    class OpinionsController < ApplicationController
  def new
    @opinion = Opinion.new
  end

  def create
    @opinion = Opinion.new(opi_params)
    @opinion.save
    redirect_to @opinion
  end

  def show
    @opinion = Opinion.find(params[:id])
  end

  private
    def opi_params
        params.require(:opinion).permit(:body)
  end
end

新:

<h1>Opinions</h1>

<%= form_for :opinion do |f| %>
    <%= f.label :body %><br>
    <%= f.text_field :body %><br>
    <br>
    <%= f.submit "Create an option" %> 
<% end %>

数据库:

    class CreateOpinions < ActiveRecord::Migration
  def change
    create_table :opinions do |t|
      t.string :body
    end
  end
end

显示:

    <h1>Your Opinions:</h1>
<div>
    <%= @opinion.body %>
</div>

请帮助我!我疯了,因为我无法解决它!谢谢:)

【问题讨论】:

    标签: ruby-on-rails ruby actioncontroller


    【解决方案1】:
    <h1>Opinions</h1>
    
    <%= form_for @opinion do |f| %>
        <%= f.label :body %><br>
        <%= f.text_field :body %><br>
        <br>
        <%= f.submit "Create an option" %> 
    <% end %>
    

    :opinion更改为实例变量@opinion

    【讨论】:

      【解决方案2】:

      当提交表单时,如果您的情况是 body 为空,则也可能会出现此问题,请将强参数更改为 params.fetch(:opinion, {}).permit(:body)

      【讨论】:

        【解决方案3】:

        我建议在def create@opinion = Opinion.new(opi_params) 之间放置一个像prybyebug 这样的调试器,然后查看params 的内容。您可能缺少opinion,这将触发ParameterMissing错误。

        另外,您是通过浏览器还是通过测试收到此错误?如果您从测试中收到此错误,则可能是您的设置。

        同时,在您的opi_params 方法中尝试params.permit(:body)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-01-18
          • 2021-11-20
          • 1970-01-01
          • 2019-08-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多