近日为了做一个小项目用到ruby 特将有些函数作为笔记
怎么去读取excel文件
1. 首先引入 require "win32ole"
2. 写一个函数包装直接调用
def read_excel(excel)
require 'pp'
workbook = WIN32OLE.new('excel.application').workbooks.open((Dir.pwd + excel).gsub('/', '\\'))
worksheet = workbook.worksheets 1
excelData = worksheet.usedrange.value
excelData.shift
# excelData.map {|a| a[0].to_i.to_s}
m = Mysql.new("localhost","root","","e2e")
excelData.each do |items|
# puts items[1..-2]
items[0] = items[0].to_i.to_s
statement = "INSERT INTO apps (project_id,app_name,l2_owner,l3_owner,app_alias,create_by,create_at) VALUES ";
statement = "#{statement}('"+items.join("','")+"',?)"
st = m.prepare(statement)
st.execute(Time.now)
end
return "load data successfully!"
ensure
workbook.close unless workbook.nil?
end
conditions.empty?
向数组里面增加记录
apps = []
conditions.each do |condition|
apps << App.all(:app_name.like=>"%#{condition}%")
end
默认是一个二维数组。可以将话成一维数组
apps = apps.flatten
可以将数组里面相同的数据给过滤掉
apps = apps.uniq
打印数组格式输出
puts apps.inspect