【问题标题】:SimpleForm: SyntaxError in ControllerSimpleForm:控制器中的语法错误
【发布时间】:2016-10-17 04:14:53
【问题描述】:

你知道这个表格有什么问题吗?

错误:

vehicleTrack.html.erb:141: syntax error, unexpected keyword_do_block, expecting => ... params[:rangefrom_string]} do |f| @output_buffer.safe_appe... ... ^ 

这是我的看法:

   <%= simple_form_for '', url: convertTrackToArea_path, :method => :post, 
       { :controller => "vehicles", 
         :action => "convertTrackToArea", 
         :search => params[:search], 
         :rangefrom_string => params[:rangefrom_string]} do |f| %>
       <%= f.input :areano, :label => 'Areano' %>
       <%= f.button :submit, value: "Crear",:name => nil%>
    <% end %>

【问题讨论】:

    标签: ruby-on-rails forms ruby-on-rails-4 simple-form


    【解决方案1】:

    我没有使用过simple_form,所以我的猜测是你错误地传递了最后一个参数,它不会将哈希作为参数,它会检测参数作为键并搜索一个值,所以会抛出=&gt; 的错误缺失,用于识别散列中的值。所以我想你可以做这样的事情:

    <%= simple_form_for '', 
    :url => url_for(:action => 'convertTrackToArea', :controller => 'vehicles',:search => params[:search], 
         :rangefrom_string => params[:rangefrom_string]),
    :method => 'post' do |f| %>
    

    由于您指定了 controlleraction ,因此您无需提及 convertTrackToArea_path 。如果该路由已经设置,您可以在发布的问题中使用它并删除控制器和操作名称,例如:

    <%= simple_form_for '', :url => convertTrackToArea_path(:search => params[:search],:rangefrom_string => params[:rangefrom_string]),:method => 'post' do |f| %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-27
      • 2013-11-18
      • 1970-01-01
      • 2018-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多