Перезаписать при загрузке файлов с рельсов? - PullRequest
1 голос
/ 17 мая 2011

я загружаю файлы в rails со следующим кодом:

name = upload['datafile'].original_filename
directory = "public/data/#{id}/#{app_id}"

Dir.mkdir("#{RAILS_ROOT}/public/data/#{id}/#{app_id}")

path = File.join(directory, name)

File.open(path, "wb") { |f| f.write(upload['datafile'].read) }

Может кто-нибудь сказать мне, как я могу сказать rails, что он должен перезаписать файл, когда он уже существует?

спасибо!

1 Ответ

2 голосов
/ 17 мая 2011

Вы должны проверить, существует ли каталог:

name = upload['datafile'].original_filename
directory = "public/data/#{id}/#{app_id}"

Dir.mkdir("#{RAILS_ROOT}/public/data/#{id}/#{app_id}") unless Dir.exist? "#{RAILS_ROOT}/public/data/#{id}/#{app_id}"

path = File.join(directory, name)

File.open(path, "wb") { |f| f.write(upload['datafile'].read) }
...