Você está na página 1de 4

21/10/23, 15:52 html - Como criar um botão(button) ou um link(a) para realizar o download de um determinado arquivo?

- Stack Overflow em Português

Como criar um botão(button) ou um link(a) para realizar o download de um


determinado arquivo? [fechada]
Perguntada 9 anos, 2 meses atrás Modified 3 anos, 10 meses atrás Vista 43mil vezes

Fechada. Essa pergunta necessita detalhes ou ser mais clara e não está aceitando respostas atualmente.

4 Quer melhorar essa pergunta? Adicione detalhes e deixe mais claro que problema está sendo resolvido ao editar esse post.
Fechada há 3 anos.

Melhore esta pergunta

Preciso criar um botão que ao clicar seja realizado o download e não aberto em uma outra aba ou janela. Podendo ser qualquer tipo de arquivo
tanto imagem, pdf, música entre outros.

html ruby-on-rails download

Compartilhar Melhore esta pergunta Seguir editada 19/08/2014 às 15:50 perguntada 15/08/2014 às 19:02
Ronny Amarante Jefferson Alison
2.594 14 23 3.954 7 27 52

3 Estou usando Ruby on Rails – Jefferson Alison 15/08/2014 às 19:05

2 Existe uma maneira simples, mas que por enquanto só funciona no Chrome: <a href="url" download="nome-do-arquivo">Baixe!</a> . A maneira garantida é
forçar o download pelo servidor. – bfavaretto 15/08/2014 às 19:13

@bfavaretto, vc tem algum artigo alguma coisa mostrando como fazer isso? – Jefferson Alison 15/08/2014 às 19:15
21/10/23, 15:52 html - Como criar um botão(button) ou um link(a) para realizar o download de um determinado arquivo? - Stack Overflow em Português

Sobre o atributo: davidwalsh.name/download-attribute, developer.mozilla.org/en-US/docs/Web/HTML/Element/a, caniuse.com/#feat=download. Sobre forçar


no servidor, com ruby/rails eu não sei, mas certamente tem como fazer. – bfavaretto 15/08/2014 às 19:18

1 @JeffersonAlison: dê uma olhada aqui: google.se/… – Sergio 15/08/2014 às 19:20

3 Respostas Ordenado por: Maior pontuação (predefinição)

Determinei um método que receberá o parâmetro download de um link_to() , dessa forma ele serviria para diversos tipos. Para seguir esse
exemplo eu tenho um arquivo chamado: javascript_the_good_parts.pdf localizado em /public/.
2
Crie uma controller chamada Pages(app/controllers/pages_controller.rb):

class PagesController < ApplicationController


def index
end
def download
send_file "#{Rails.root}/public/#{params[:file_name]}"
end
end

Adicione em suas rotas(config/routes.rb):

root 'pages#index'
get 'download'=> 'pages#download'

E como página(app/views/pages/index.html):

<%= link_to "Fazer Dowload" ,:action => :download, :file_name =>


"javascript_the_good_parts.pdf" %>
21/10/23, 15:52 html - Como criar um botão(button) ou um link(a) para realizar o download de um determinado arquivo? - Stack Overflow em Português

Screenshot Exemplo:

Compartilhar Melhore esta resposta Seguir respondida 19/08/2014 às 17:19


Ronny Amarante
2.594 14 23

Existe o atributo download em HTML5 que pode ser usado assim:

1 <a href="/images/myw3schoolsimage.jpg" download>


21/10/23, 15:52 html - Como criar um botão(button) ou um link(a) para realizar o download de um determinado arquivo? - Stack Overflow em Português

Compartilhar Melhore esta resposta Seguir editada 12/12/2019 às 8:26 respondida 19/08/2014 às 15:29
NoobSaibot Luiz Rossi
9.760 6 24 52 458 3 9

Primeiro você tem que colocar um iframe hidden e sem src na sua aplicação

0 <iframe name="iframe_download" class="hidden"></iframe>

Agora você pode colocar o link para download com o target para o iframe oculto

<a href="/caminho/para/download.pdf" target="iframe_download">Clique para baixar</a>

Espero ter ajudado

Compartilhar Melhore esta resposta Seguir respondida 19/08/2014 às 22:57


Fábio Lemos Elizandro
844 4 13

Você também pode gostar