Привет Я использую Ruby 2 и Rails 4. Я загружаю pdf-файл и его хранящийся в public/uploads/contact/file/15/abc.pdf
, потому что я использую CarrierWave, а в файле file_uploader.rb написан ниже код.Как загрузить файл, который загружается с помощью carrierwave?
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
Теперь я хочу загрузить тот же файл, который я загрузил. Как загрузить этот файл? Пожалуйста, поделитесь со мной, если у кого есть идеи. Я добавляю свой код ниже.
Показаны фотографии, которые я хочу сделать точно. Выбрав файл, загрузите его, а затем скачайте.
Мои коды:
downloads_form.html.erb
<table class="table table-condensed table-responsive">
<tbody>
<%= form_tag create_form_path, multipart: true do |f| %>
<tr>
<td>ABC</td>
<td><%= file_field_tag "contact[file]", class: "form-control" %></td>
<td><%= submit_tag 'Upload' %></td>
<td><%= link_to "Download", static_pages_downloadform_pdf_path %></td>
</tr>
<tr>
<td>DEF</td>
<td><%= file_field_tag "contact[file]", class: "form-control" %></td>
<td><%= submit_tag 'Upload' %></td>
<td><%= link_to "Download", static_pages_downloadform_pdf_path %></td>
</tr>
<% end %>
</tbody>
</table>
static_pages_controller.rb
def create_form
@form_downup = Contact.new(contact_params)
if @form_downup.save
redirect_to :back
else
render downloads_form_path
end
end
def downloadform_pdf
end
private
def contact_params
params.require(:contact).permit(:file)
end
routes.rb
match '/downloads_form', to: 'static_pages#downloads_form', via: 'get', as: :downloads_form
match '/create_form', to: 'static_pages#create_form', via: 'post', as: :create_form
get "static_pages/downloadform_pdf"
Не можете начать выражать свою благодарность за это. Взял меня пару дней, пытаясь понять это! Спасибо! – dgreen22