Revision: 19353
Updated Code
at October 22, 2009 05:53 by almazom
Updated Code
source of file model *DataFile.rb* / Код клаÑÑа DataFile.rb, который нужно Ñоздать в папке models require 'rutils' def self.save(upload) spl = upload['datafile'].original_filename.split('.') ext = spl[spl.length-1] name = File.basename(upload['datafile'].original_filename).gsub(/.#{ext}/,'').dirify<<'.'<<ext directory = "htdocs/images" # create the file path path = File.join(directory, name) # write the file File.open(path, "wb") { |f| f.write(upload['datafile'].read) } return name end ----------------------------- uploading form view / форма выгрузки файла <form action="/anycontrooller/upload_action" enctype="multipart/form-data" method="post"> <p><input id="upload_datafile" name="upload[datafile]" size="30" type="file" /></p> <input name="commit" type="submit" value="Upload" /> </form> --------------------------------- Принимающий контроллер / receiving controller def upload begin post = DataFile.save(params[:upload]) render :text =>'Файл был уÑпешно выложен под именем <br />"<b>'<<post.to_s+'</b>"' rescue render :text =>'error' end end
Revision: 19352
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 22, 2009 05:30 by almazom
Initial Code
source of file model *DataFile.rb* / Код клаÑÑа DataFile.rb, который нужно Ñоздать в папке models require 'rutils' def self.save(upload) spl = upload['datafile'].original_filename.split('.') ext = spl[spl.length-1] name = File.basename(upload['datafile'].original_filename).gsub(/.#{ext}/,'').dirify<<'.'<<ext directory = "htdocs/images" # create the file path path = File.join(directory, name) # write the file File.open(path, "wb") { |f| f.write(upload['datafile'].read) } end ----------------------------- uploading form view / форма выгрузки файла <form action="/anycontrooller/upload_action" enctype="multipart/form-data" method="post"> <p><input id="upload_datafile" name="upload[datafile]" size="30" type="file" /></p> <input name="commit" type="submit" value="Upload" /> </form> --------------------------------- Принимающий контроллер / receiving controller def upload begin post = DataFile.save(params[:upload]) render :text =>'ok' rescue render :text =>'error' end end
Initial URL
Initial Description
Можно выкладывать даже файлы, Ñодержащие кириллицу в названии. Они будет подвергнуты транÑлитерации, пробелы и другие небезопаÑные Ñимволы будут заменены на "_".
Initial Title
rails file upload/ выгрузка файла в ruby on rails 2+
Initial Tags
rails
Initial Language
Rails