繁体   English   中英

Rails 4-ActiveModel :: ForbiddenAttributesError

[英]Rails 4 - ActiveModel::ForbiddenAttributesError

我已经阅读了其他有关此问题的信息,但仍然无法指出导致该错误的原因。 我已经定义了Rails 4的强参数,但是它一直显示错误:

MessagesController#create中的ActiveModel :: ForbiddenAttributesError

我的看法是这样的:

<%= form_for(@message) do |f| %>
    <div class="form-group field">
  <%= f.label :phrase %>
  <br/>
  <%= f.text_field :phrase,  autofocus: true, class: 'form-control' %>
</div>
<div class="form-group field">
  <%= f.label :date %>
  <br/>
  <%= f.date_field :date, class: 'form-control' %>
</div>
<div class="actions text-center">
  <%= f.submit "Submit", class: 'btn btn-default' %>
</div>
<% end %>

我的控制器:

class MessagesController < ApplicationController

def today
    @dates = Message.all()
end

def history
    @messages = Message.history_checker
end

def new
    @message = Message.new
end

def create
    @message = Message.new(params[:message])
    if @message.save
        flash[:notice] = "OK"
        redirect_to root_path
    else
        render :action => 'new'
    end
end

private

def message_params
  params.require(:message).permit(:phrase,:date)
end 
end

错误指向控制器@message = Message.new(params[:message])第15行。 有任何想法吗?

您只需要使用message_params而不是params[:message]

@message = Message.new(message_params)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM