我正在尝试导入一个包含地址的CSV文件。在控制器中我调用了'csv'但是我得到了这个错误:
地址控制器
地址模型
参考资料:http://ruby-doc.org/stdlib-1.9.3/libdoc/csv/rdoc/CSV.html
NoMethodError in AddressesController#import_addresses
undefined method `path' for "testimport.csv":String
Address.import(params[:file].path)
地址控制器
class AddressesController < ApplicationController
require 'csv'
def import_addresses
Address.import(params[:file].path)
redirect_to root_url, notice: "Addresses imported."
end
地址模型
def self.import(file)
CSV.foreach(file, headers: true) do |row|
Address.create! row.to_hash
end
end
参考资料:http://ruby-doc.org/stdlib-1.9.3/libdoc/csv/rdoc/CSV.html
enctype="multipart/form-data"
。如果没有,input type="file"
的值将只发送文件名。 - Faridco