Ruby on Rails导入CSV错误:第2行中的非法引用

时间:2016-04-11 00:54:49

标签: ruby-on-rails ruby csv

我的模特课

def self.to_csv
        attributes = %w{a b c d }
        CSV.generate(headers: true) do |csv|
          csv << attributes

          all.each do |script|
            csv << attributes.map{ |attr| script.send(attr) }
          end
        end
      end


      def self.import(file)
          CSV.foreach(file.path, headers: true, encoding:'iso-8859-1:utf-8') do |row|
          Student.create! row.to_hash
        end
      end
    end

对于def self.import(file)我收到错误的原因我在标题中说明:第2行中的非法引用。当我将此代码CSV.foreach(file.path, headers: true, encoding:'iso-8859-1:utf-8')更改为CSV.foreach(file.path, headers: true)时,我得到的错误与:UTF-8中的无效字节序列。这是为什么。  控制器类:

   def import
      Student.import(params[:file])
      redirect_to root_url, notice: "Students imported."
    end

0 个答案:

没有答案