gem 'carrierwave' #上传工具
我把 excel 文件传上去了,怎么把对应的名字等等的,存入数据库对应的 table 中呢? 请问各位是用什么方法的?还是说有对应的 gem 可以选择呢?
安装gem 'spreadsheet'
def save_import
uploader = ExcelUploader.new
uploader.store!(params[:excel_file])
book = Spreadsheet.open "#{uploader.store_path}"
sheet1 = book.worksheet 0
@users = []
sheet1.each 1 do |row|
p = User.new
p.userid = row[0].to_i
p.name = row[1]
p.email = row[2].to_s
if row[3].is_a?(Float)
p.password = row[3].to_i.to_s
else
p.password = row[3].to_s
end
p.save
#@users << p
end
uploader.remove!
redirect_to admin_users_path
end
这个是我写的,可以工作
#1 楼 @chunlea https://github.com/voraz/spreadsheet 是这个吗?
我有点好奇的是,自己 liunx 服务器上需要不需要装 office?还有,win 下的 office 文件会不会传到 linux 出现差异的。