2011-03-10 121 views
0

我有此代码红宝石写值

#check if haus table is not blank 
     if !haus.blank? 
      temp = Dir.mkdir("C:/thistemporary/") 
     puts "tempfolder is created" 
       haus.each do |file| 
       dataname = file.name 
       datavalue = file.data 
      end 
     end 

我需要通过豪斯表,具有“数据列”(LONGBLOB)和“名栏”来迭代(VARCHAR) ,保存每个数据的名称和值在temp文件夹内相关。我怎样才能做到这一点?

谢谢你的任何建议

回答

0
if !haus.blank? 
    tempdirname = "C:/thistemporary/" 
    temp = Dir.mkdir(tempdirname) 
    puts "tempfolder is created" 
    haus.each do |file| 
    dataname = File.join(tempdirname, file.name) 
    datavalue = file.data 
    File.open(dataname, 'w'){ |f| f << datavalue } 
    puts "#{dataname} is created" 
    end 
end 
+0

感谢您的答复。但我感到困惑,为什么你使用File.join文件夹的临时文件夹。正如所料,我得到这个错误:不能将Fixnum转换为字符串。我使用temp2 = temp.to_s,并调用File.join(temp2,file.name),但它显示没有这样的文件或目录 - 0/hause_withredcolour – rahardi 2011-03-10 12:41:53

+0

我编辑了我的答案:) – fl00r 2011-03-10 12:46:02

+0

不幸的是,它仍然没有解决问题,因为现在它显示未定义的方法'<'为# rahardi 2011-03-10 12:51:28