Posts Tagged ‘:picture’

Ruby on Rails Paperclip como definir uma imagem padrão quando o usuário não fez upload da imagem

Postado em 23 jun 2009
Categoria(s) Ruby on Rails

Para definir uma imagem padrão de exibição, quando o usuário não fizer o upload de uma imagem, você deve usar a opção :default_url do Paperclip.

Por exemplo, digamos que você deseja exibir a imagem abaixo, quando o usuário não definiu uma foto no seu profile.

No Picture

Exemplo de configuração do Paperclip:

1
2
3
4
5
has_attached_file :picture,
                    :styles => {:thumb => '50x50#'},
                    :path => ":rails_root/public/images/pictures/:id/:style_:basename.:extension",
                    :url => "/images/pictures/:id/:style_:basename.:extension",
                    :default_url => "/images/no_pictures/:style/missing.png"

A linha abaixo, diz para o Paperclip procurar uma imagem padrão no diretório /images/no_pictures/:style/missing.png, onde :style é o tamanho do resize da imagem, nesse exemplo thumb:

...
:default_url => "/images/no_pictures/:style/missing.png"
...

Desta forma você precisa criar o diretório /images/no_pictures/thumb/ e colocar a imagem missing.png lá.

Quando você usar:

1
<%= image_tag(user.picture.url(:thumb), :alt => user.full_name) %>

Caso a imagem não exista o Paperclip usará a imagem padrão de exibição /images/no_pictures/thumb/missing.png

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark