Удалить имя действия контроллера из URL - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть то, что я чувствую, может быть, простой вопрос, но я доброжелательно борюсь с этим.У меня есть действие в моем контроллере, которое загружает PDF-файл при нажатии кнопки в представлении.Файл PDF загружается, но проблема возникает после того, как я щелкаю по нему, действие остается в браузере и загружает PDF каждый раз, когда я перезагружаю страницу.

Пример URL

ДоЯ нажимаю кнопку

https://matrix-spam-camp.c9users.io

После нажатия кнопки она остается в URL до тех пор, пока я не удалю ее из браузера вручную.

https://matrix-spam-camp.c9users.io/download_pdf

/ app / app / views / портфолио / main.html.erb (ссылка)

<%= link_to download_pdf_path, class: 'download-btn', remote: true do %>
    <%= image_tag('img_btn_icon.png') %> <span class='resume-btn-text'>Resume</span>
<% end %>

/ app / app / controllers / portfolio_controller.rb

def download_pdf
  send_file "#{Rails.root}/app/assets/docs/resume.pdf", type: "application/pdf", x_sendfile: true
end

/ app / config / rout.rb

get 'download_pdf', to: "portfolio#download_pdf"

Любая помощь в этом вопросе будет принята с благодарностью.

1 Ответ

0 голосов
/ 27 ноября 2018

Таким образом, я смог решить эту проблему, добавив target: _blank к link_to.

<%= link_to :download, class: 'download-btn', target: "_blank" do %>
    <%= image_tag('img_btn_icon.png') %> <span class='resume-btn-text'>Resume</span>
<% end %>

. Это не позволяет кнопке загрузки применять имя для действия контроллера, вызываемого * 1006.* от размещения в URL браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...