代码之家  ›  专栏  ›  技术社区  ›  Greg

选择文件,解压缩,处理并添加到数据库

  •  0
  • Greg  · 技术社区  · 3 年前

    我想有一个按钮来选择一个zip文件,解压缩,处理其中一个文件,并将数据添加到数据库中。我被控制器的动作卡住了。

    bp_stats.controller

    def import_data
      puts "Massage and import data here"
    end
    

    路线.rb

    get 'import_data', to: 'bp_stats#import_data'
    

    中的导入按钮 _import_data.html.erb :

    <%= form_tag( action: :import_data, controller: 'bp_stats' ) do %>
      <%= file_field_tag :filename %>
      <%= submit_tag( "Import" ) %>
    <% end %>
    

    我收到这个错误

    ActionController::RoutingError (No route matches [POST] "/import_data"):
    
    0 回复  |  直到 3 年前
        1
  •  1
  •   jamesc    3 年前

    你的路线上写着

    get 'import_data', to: 'bp_stats#import_data'
    

    这显然是一个get请求路由而不是post请求,您需要使用post将其更改为post请求的路由

    post 'import_data', to: 'bp_stats#import_data'