我的表字段名称是小写的,我从CSV文件获得的字段名称是camelcase.无论如何我可以将哈希数组的键转换为小写吗?
这是我现在的代码:
- CSV.foreach(file,:headers => true) do |row|
- Users.create!(row.to_hash)
- end
这是失败的,因为密钥是驼峰式的(我通过手动编辑文件来验证这一点,使标题行全部小写).
PS.另外,我很想知道为什么地狱栏目会将桌面名称的区分大小写开始起作用?
解决方法
你可以使用这样的东西:
- CSV.foreach(file,:headers => true) do |row|
- new_hash = {}
- row.to_hash.each_pair do |k,v|
- new_hash.merge!({k.downcase => v})
- end
- Users.create!(new_hash)
- end
我没有时间测试它,但你可以理解它.希望它会有所帮助