小编Mik*_*lsh的帖子

上传文件参数未通过控制器

我对 Rails 相当陌生,并且一直在为我们当地的高中工作的移动 Web 应用程序上取得稳步进展,但遇到了一个让我难堪的问题。我希望这里的集体知识能够为我指明正确的方向。

我有一个正在工作的学校运动员模型(名字、姓氏、身高、体重、毕业年份, - 标准的东西)(通过标准脚手架生成 CRUD),现在我想添加通过 CSV 上传导入记录的功能.

为了不重新发明轮子,我正在关注Rich on Rails 中的这个示例。为了熟悉它,我创建了一个单独的 Rail 项目并按照示例进行操作,一切都按预期工作。伟大的。现在集成到我现有的项目中。

除了一个例外,一切似乎都很好地集成在一起 - CSV 文件从未在参数中传递给我的模型,我不知道为什么。我确信这是显而易见的,但我已经盯着这个问题几个小时了,但看不出我做错了什么。

这是我的 Athletes 控制器的一部分:

class AthletesController < ApplicationController
  before_action :set_athlete, only: [:show, :edit, :update, :destroy]

  # GET /athletes
  # GET /athletes.json
  def index
    @athletes = Athlete.all.order(:lastname, :firstname)
  end

  # POST /athletes/import
  # POST /athletes/import.json
  def import
    logger.info(params.to_yaml)
    begin
      Athlete.import(params[:file])
      redirect_to page_path('admin'), notice: "Athletes imported."
    rescue
      redirect_to page_path('admin'), notice: "Invalid CSV file format."
    end
  end

  # GET /athletes/1
  # …
Run Code Online (Sandbox Code Playgroud)

ruby csv upload ruby-on-rails ruby-on-rails-4

5
推荐指数
1
解决办法
915
查看次数

标签 统计

csv ×1

ruby ×1

ruby-on-rails ×1

ruby-on-rails-4 ×1

upload ×1