Когда файл загружен, Rails автоматически прочитает его и сделает его экземпляром Tempfile , поэтому он уже сохранен, но не будет храниться в системе вечно.
Вы можете получить доступ к файлу, используя обычный синтаксис params[:field_name]
, как если бы файл был любым другим полем (не забудьте установить content-type
формы на multipart/form-data
- т.е.
form_for @mything, :html => {:multipart => true})
и вы получите временный файл. Tempfile может быть прочитан из любого другого файла.
Rails (или, может быть, Rack, я не на 100% в курсе) определяет, делать это или нет для загруженного контента, основываясь на вложенной части элемента mulitpart / form-data, содержащего файл.
Может быть возможно переопределить вещи, если вам нужно, чтобы остановить это хранилище. Обычная практика, однако, состоит в том, чтобы просто работать с файлом, а затем позволить Ruby работать с временным файлом.