2014-11-26 6 views
0

Привет Я использую paperclip в своем приложении rails для загрузки файлов. Я хотел бы знать, как создать исходный путь к файлу в form_tag. Или получить оригинальный путь к файлу в контроллере, чтобы быть конкретным БлагодаряЗагрузка файла в ruby ​​on rails

<%= form_tag upload_categories_path, :method => :get do %> 
    <td><%= file_field_tag :file_name %></td> 
    <td><%= submit_tag t('submit') %></td> 
<% end %> 
+0

Можете ли вы быть более конкретным ? –

+0

В моем контроллере я хотел бы получить путь к файлу, чтобы я мог его открыть, чтобы обработать его с помощью roo (файл - это распространенные листы). Поэтому основная цель - получить путь к файлу для дальнейшей обработки и не привязан к какой-либо модели (отсюда и использование form_tag). – Tiamon

ответ

0

Пожалуйста, убедитесь, что вы добавили: HTML => {: многокомпонентные => верно} в вашей форме. как

<%= form_tag upload_categories_path, :method => :get, :html => { :multipart => true } do %> 
    <td><%= file_field_tag :file_name %></td> 
    <td><%= submit_tag t('submit') %></td> 
<% end %> 

Ref uploading file rails

+0

Я заменил: html => {: multipart => true} с помощью: multipart => true и У меня есть следующие параметры: «file_name» => # , @ original_filename = "categories.ods", @content_type = "application/vnd.oasis.opendocument.spreadsheet", @ headers = "Content-Disposition: form-data; name = \" file_name \ "; filename = \" categories.ods \ "\ r \ nContent-Type: application /vnd.oasis.opendocument.spreadsheet\r\n ">," category_id "=>" 5 "," commit "=>" Submit ", – Tiamon

+0

Как получить исходный путь к файлу из этих параметров – Tiamon

1

Измените тэг формы:

<%= form_tag upload_categories_path, :html => { :multipart => true }, :method => :get do %> 
    <td><%= file_field_tag :file_name %></td> 
    <td><%= submit_tag t('submit') %></td> 
<% end %> 

в вашем посте действия, вы можете получить путь к файлу с помощью:

params[:file_name].path 
+0

Спасибо за ответ , params [: имя_файла] является строкой и не имеет метода «путь» – Tiamon

+0

Что именно вы получаете в params [: имя_файла]? –

+0

Имя файла (строка) – Tiamon

Смежные вопросы