DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Mobile magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Artigo WebMobile 29 - Minicurso de Ruby on Rails – Parte 9

Fechamos o minicurso aprendendo como utilizar as partials do Rails para minimizar o desenvolvimento e como enviar arquivos para o servidor usando o conhecido plug-in Paperclip.






Web
Minicurso de Ruby on Rails – Parte 9
Uso de partials e upload de arquivos

Esse é o último artigo da série Minicurso de Ruby on Rails. Durante a série, conhecemos as principais funcionalidades desse framework que ganha espaço no mercado graças a sua agilidade e minimalismo.
Vimos nas últimas edições da WebMobile como implementar cada funcionalidade de um aplicativo de blog: categorias, tags e usuários. Neste último artigo veremos como usar as partials para refatorar o código, como trabalhar com o upload de arquivos, através do plug-in Paperclip, e como modificar as urls dos posts para a otimização dos serviços de busca.
Partials
Nas edições anteriores, vimos que partials são um recurso usado pelo Ruby on Rails para diminuir os códigos repetidos de um aplicativo e assim agilizar a manutenção do projeto. No nosso blog, temos duas views da entidade Post muito semelhantes: a que lista todos os posts (index.html.erb) e a que mostra o post e seus comentários (show.html.erb).
Para evitarmos a redundância em nosso código, crie dentro da pasta app/views/posts o arquivo _post.html.erb. Todo arquivo cujo nome começa com underscore (_) é entendido como uma partial no Rails. O conteúdo da partial _post.html.erb é apresentado na Listagem 1.

Listagem 1. Partial _post.html.erb
 1  <h2><%= link_to post.title, post %></h2>
 2  
 3  <h3><%= post.created_at.to_s(:short) %> - <%= time_ago_in_words(post.created_at) %> - <%= link_to post.user.login, :controller => 'posts', :user => post.user.login if post.user_id %> - <%= link_to post.category.name, :controller => 'posts', :category => post.category.name if post.category_id %></h3>
 4  <p>
 5       <%=h post.body %>
 6       <br/>
 7       <small>
 8           <%= link_to t(:edit), edit_post_path(post) if is_author?(post.user_id) %>
 9          <%= link_to t(:destroy), post, :confirm => t(:are_you_sure), :method => :delete if is_author?(post.user_id) %>
10          Tags: <% for tag in post.tag_list.sort! %>
11              <%= link_to tag, posts_path(:tag => tag) %>
"


ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da Mobile magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Leonardo Faria

Trabalha com desenvolvimento web. Trabalha com treinamentos, criação de interfaces usando webstandards e Flash. Desenvolve também em PHP e Rails.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03