2015-12-18 28 views
0

我对此代码有问题。Protocol :: TrasmissionMeansController中的ActionController :: ParameterMissing#create

这是控制器:

def create 
    @mean = TrasmissionMean.new(trasmission_mean_params) 
    if @mean.save 
    flash[:success] = "Mezzo di Trasmissione #{@mean.description}" 
    else 
    flash[:error] = "Error #{@mean.errors.full_messages}" 
    render :action => 'new' 
    end 
end 

def trasmission_mean_params 
    params.require(:mean).permit(:description) 
end 

我有一个问题与此代码。

这是视图,呈现形式:

<div class="row"> 
    <div class="col-md-10 col-md-offset-1"> 
    <%= form_for @mean, :html => {:class => "form-horizontal" },:url => url_for(:controller => "trasmission_means", :action => "create") do |f| %> 
     <hr> 
     <%= render partial: "form", :locals => { :@mean => @mean, :f => f } %> 
     <hr> 
     <%= f.submit "Aggiungi", class: 'btn btn-success btn-lg pull-right' %> 
    <% end %> 
    </div> 
</div> 

呈现形式:

<div class="form-group"> 
    <div class="col-lg-12"> 
    <%= f.text_area :description, :rows => 4, class: 'form-control ', placeholder: 'Descrizione' %> 
    </div> 
</div> 

,这是错误。我不明白问题出在哪里

ActionController::ParameterMissing in Protocol::TrasmissionMeansController#create 参数是丢失或为空值:是指

回答

2

的参数是基于类

def trasmission_mean_params 
    params.require(:mean).permit(:description) 
end 

是params哈希表寻找均值但你的类被称为TransmissionMean这意味着它应该是

def trasmission_mean_params 
    params.require(:transmission_mean).permit(:description) 
end 
+0

肯定这是一个错误,但现在我在审查代码模式正在stayng ity :)并且还有其他错误 –

相关问题