sexta-feira, 26 de julho de 2013

[Vídeo] Instalação Ruby on Rails Windows 7

Tudo bem pessoal?

Hoje estarei postando um vídeo que um seguidor fez exclusivamente para o blog, com intuito de auxiliar a instalação do Ruby on Rails. O passo a passo está bem explicativo, e ajudará as pessoas que querem instalar ou tiveram dificuldade com o post antigo (link).

Segue o vídeo do amigo Thiago Tenório:




Quem achar que o vídeo ajudou, dá uma curtida lá! ;)



Qualquer dúvida ou sugestão podem usar o espaço do blog ou do youtube para fazer os comentários. Fiquem à vontade!

Abraços!

Links relacionados:
https://www.youtube.com/user/TheTutoriaisInfo/videos
http://rubyonrailsbr.blogspot.com.br/2013/07/instalacao-ruby-on-rails-windows-7.html

[Oportunidade] Ruby on Rails Developer

We are looking for developers that enjoy coding to be part of our core team.

You have to:
- be able to speak, write and read English
- be ready for new challenges
- be responsible worker
- have availability to travel and expend some time in Colombia, Brazil
- be a team worker
- be passionate about coding and sharing
- be happy

You will be able:
- to work flexible hours
- to work remotely
- to travel 
Como se candidatar
Send an email to: lennon.manchester@staunchrobots.com
Cidade
São Paulo - SP
Empresa
Staunch Robots


Fonte: OndeTrabalhar.com

[Oportunidade] Vaga Ruby/Rails em SBC

Estamos contratando desenvolvedores com ou sem experiência em Ruby/Rails para trabalhar em uma startup em São Bernardo do Campo.

Estamos avaliando qualquer nível de profissional com ou sem experiência em Ruby.

Área de Atuação:
Desenvolvimento / Programação

Escolaridade:
Indiferente

Idiomas:
Inglês Intermediário

Forma de Contratação:
A Combinar

Faixa Salarial:
A Combinar
Como se candidatar
vitor@corretagemfacil.com.br
Cidade
São Bernardo do Campo - SP
Empresa
CorretagemFácil


Fonte: OndeTrabalhar.com

quinta-feira, 25 de julho de 2013

[Oportunidade] Desenvolvedor Ruby - RS

Nível Hierárquico:
Analista/Gerente de projeto

Área de Atuação:
Desenvolvimento / Programação

Escolaridade:
Indiferente

Idiomas:
Inglês Fluente

Forma de Contratação:
A Combinar

Faixa Salarial:
Superior a R$ 2.500,00 
Como se candidatar
Mande e-mail para diego.valduga@deon-tech.com ou ligue para 51 96386780
Cidade
Gramado - RS
Empresa
VITRINES ONLINE


Fonte: OndeTrabalhar.com

quarta-feira, 24 de julho de 2013

Instalando Ruby on Rails Windows 8


Olá pessoal, tudo tranquilo?

Gostaria de mostrar a vocês um jeito fácil de instalar o Ruby on Rails no Windows.
Apesar do título está se referindo ao Windows 8, poderemos instalar também no Windows 7 e XP.

Vamos começar?


Primeiro acessamos o site http://railsinstaller.org/

Fig.1: Rails Installer


No site tem um vídeo explicativo, mostrando as vantagens do Rails Installer. Aqui você pode conferir:





Na parte de downloads, selecionamos o arquivo desejado. Neste artigo foi baixado o Windows com o Ruby 1.9.


Fig.2: Download 


Após o download iniciamos a instalação.


Fig.3: Instalação (Welcome)


Aceitamos os termos.

Fig.4: Temos de uso


Escolhemos a pasta de destino.

Fig.5: Definição de local de instalação


Por fim, verificamos se todos os componentes foram instalados com sucesso. Entramos no Prompt de Comando e digitamos os comandos da imagem a seguir:

Fig.6: Verificando versões de componentes instalados

Se tudo ocorrer bem, as versões do ruby, gem e rails será informado.
Fácil né?

Qualquer dúvida, não exite em perguntar. 


Grande abraço!

[Oportunidade] Desenvolvedor Ruby - SP

O r7.com busca programador com anseio de buscar novos desafios para integrar sua equipe.

Requisitos:

-Ótimo conhecimento em orientação a objetos e design de software;
-Experiência com desenvolvimento e deploy de aplicações e sistemas web;
-Apresentar conhecimento avançado da linguagem Ruby;
-Vivência com TDD, testes funcionais e de performance;
-Conhecimento em armazenagem de dados, tanto relacional quanto orientado a documentos e disponibilização de dados como serviços;
-Experiência com ambientes onde a integração continua, automação de ambientes e releases é prioridade;
-Experiência em escalabilidade e melhoria de sistemas em produção.

Nosso ambiente é dinâmico e colaborativo, e ainda contamos com ótimos profissionais que buscam melhorar todos os aspectos do processo de desenvolvimento, então você terá a chance de compartilhar experiências e participar de projetos muito interessantes.

Além de oferecer este ambiente de valorização do conhecimento, contamos ainda com um salário bem competitivo e pacote de benefícios.

Se você se interessou pela vaga, não deixe de entrar em contato conosco no email vagas-r7@sp.r7.com dando uma breve descrição dos projetos no qual você já trabalhou juntamente com um curriculum atualizado.
Como se candidatar
Envie seu CV para vagas-r7@sp.r7.com com o título: Desenvolvedor Ruby
Cidade
São Paulo - SP
Empresa
Rede Record - R7.com

Fonte: OndeTrabalhar.com

segunda-feira, 22 de julho de 2013

Instalação Ruby on Rails Windows 7

[ATUALIZADO E TESTADO]
[INSTALAÇÃO EM VÍDEO AQUI]

Olá pessoal, tudo bem?


A pergunta de hoje é: Como instalar o Ruby on Rails no Windows 7? Tem algum truque, ou algo em que devo me atentar? Isso é o que veremos a partir de agora!


Às vezes, na hora de uma instalação pode surgir problemas dos quais não sabemos o que fazer. Nessas horas recorremos ao google e procuramos algo para nos ajudar. E é com essa intenção que estou fazendo esse post, para justamente ajudar as pessoas que precisam desse auxílio, mesmo se tratando de uma instalação relativamente simples.


Irei detalhar passo a passo o processo de instalação do Ruby e Rails no Windows 7. Fiquem à vontade de tirar dúvidas ou fazer perguntas no espaço de comentários do blog Ruby on Rails Brasil. Aqui abordaremos a instalação do:



  • Ruby
  • Ruby Gems
  • Rails 

1ª Etapa: Instalando Ruby



Fig.1: Ruby


Primeiro de tudo é necessário a instalação do Ruby. Para isso, entramos no site http://rubyforge.org/frs/?group_id=167 e baixamos a versão estável mais recente. Para este artigo foi baixado a versão 1.9.3.


Fig.2: Site RubyFoge


Depois de ter baixado o executável, iniciamos a instalação.

Na tela inicial, aceitamos os termos de uso para poder prosseguir na instalação. 

Fig.3: Temos de uso


Escolhemos a pasta de destino e clicamos em INSTALL.

Fig.4:  Escolhendo a pasta de destino


Após a finalização da instalação, entramos no Prompt de Comando (cmd) do Windows e digitamos ruby -v para verificar se tudo ocorreu bem checando a versão do ruby instalado.

Fig.5: Verificando a versão do ruby


Terminado a verificação, iremos iniciar a segunda etapa.

2ª Etapa: Instalando o Ruby Gems

Agora precisaremos baixar o Ruby Gems. O site para download é o http://RubyGems.org/.

Fig.6: Baixando o RubyGems


Após ter baixado o RubyGems, extraímos os dados para uma pasta qualquer e localizamos o arquivo "setup.rb". Clicamos nela para instalar ou através do Prompt de Comando, entramos na pasta e executamos o camando ruby setup.rb.

Fig.7: Localizando o arquivo setup.rb


Após a instalação, verificamos se tudo ocorreu bem checando a versão do gem, digitando gem -v.

Fig.8: Verificando a versão do gem


3ª Etapa: Instalando o Rails

Agora colocaremos o ruby nos trilhos! O momento de instalar o rails.

Fig.9: Instalando o Rails


É simples essa última etapa. Abrimos novamente o Prompt de Comando e digitamos o seguinte comando: gem install -v=3.1.0 rails. Irá demorar um pouco, mas ao final já estará instalado o rails.

Fig.10: Instalando o rails


Em alguns casos, poderá aparecer a seguinte mensagem de erro:
ERROR: Error installing rails:
The ‘json’ native gem requires installed build tools.
Please update your PATH to include build tools or download the Dev
from ‘http://rubyinstaller.org/downloads’ and follow the instructi
at ‘http://github.com/oneclick/rubyinstaller/wiki/Development-Kit

Fig.11: Mensagem de erro


Se isso ocorrer, iremos no http://rubyinstaller.org/downloads e baixar o DEVELOPMENT KIT.

Extraímos ele em uma pasta qualquer e, no Prompt de Comando, entramos na pasta e digitamos:


ruby dk.rb init

e em seguida:

ruby dk.rb install

Após ter feito isso, voltamos ao início da 3ª etapa e instalaremos o rails novamente.
Digitando rails -v, verificamos se a instalação teve sucesso.


Fig.12: Rails instalado


FIM!


Pronto, a instalação do Ruby on Rails no Windows 7 foi concluída!
Espero que tenha ajudado.

Qualquer dúvida ou sugestão, utilizem o campo de comentários abaixo.


Abraços!

sexta-feira, 19 de julho de 2013

[Oportunidade] Desenvolvedor Ruby Júnior - SP

Estamos contratando um desenvolvedor júnior para trabalhar na AgroInova.

Gostamos de ferramentas que proporcionam simplicidade e produtividade no desenvolvimento de software. por isso utilizamos a linguagem Ruby e a framework web Ruby on Rails.

Para o deploy da nossas aplicações utilizamos Java com o servidor de aplicações open source da Red Hat, o JBoss, através da ferramenta de integração Torquebox, da própria Red Hat, e JRuby (máquina virtual da linguagem Ruby feita em Java). Acreditamos que a única forma manter um ambiente de infra-estrutura organizado é através de automação, por isso, todo o processo de instalação, deploy e manuntanção das nossas aplicações é automatizado, com ferramentas como Capistrano (automação de deploy) e Puppet (automação de configuração/instalação de ferramentas nos servidores). Utilizamos cloud computing na infra-estrutura das nossas aplicações.

Trabalhamos também com desenvolvimento mobile, utilizando Android e aplicações web com design responsivo.

Como somos uma startup, temos um ambiente bem aberto para discussões tecnológicas. Você terá bastante liberdade para apresentar suas idéias ou ferramentas que você acha interessantes. Reservamos um período semanal para melhoria tecnológica dos nossos softwares.

O nosso mercado de atuação, o Agronegócio, tem muitas oportunidades interessantes para se aplicar tecnologia.

Estamos buscando alguém que conheço o básico de desenvolvimento web, banco de dados e MVC, mas principalmente buscamos alguém que goste de aprender e trabalhar em projetos inovadores.
Como se candidatar
rubem@agroinova.com.br
Cidade
São Paulo - SP
Empresa
Agroinova Tecnologia e Consultoria, Importação e Exportação Ltda


Fonte: OndeTrabalhar.com

[Oportunidade] Desenvolvedor Ruby Pleno - SP

Estamos contratando um desenvolvedor pleno para trabalhar na AgroInova.

Gostamos de ferramentas que proporcionam simplicidade e produtividade no desenvolvimento de software. por isso utilizamos a linguagem Ruby e a framework web Ruby on Rails.

Para o deploy da nossas aplicações utilizamos Java com o servidor de aplicações open source da Red Hat, o JBoss, através da ferramenta de integração Torquebox, da própria Red Hat, e JRuby (máquina virtual da linguagem Ruby feita em Java). Acreditamos que a única forma manter um ambiente de infra-estrutura organizado é através de automação, por isso, todo o processo de instalação, deploy e manuntanção das nossas aplicações é automatizado, com ferramentas como Capistrano (automação de deploy) e Puppet (automação de configuração/instalação de ferramentas nos servidores). Utilizamos cloud computing na infra-estrutura das nossas aplicações.

Trabalhamos também com desenvolvimento mobile, utilizando Android e aplicações web com design responsivo.

Como somos uma startup, temos um ambiente bem aberto para discussões tecnológicas. Você terá bastante liberdade para apresentar suas idéias ou ferramentas que você acha interessantes. Reservamos um período semanal para melhoria tecnológica dos nossos softwares.

O nosso mercado de atuação, o Agronegócio, tem muitas oportunidades interessantes para se aplicar tecnologia.

Para a vaga de desenvolvedor pleno, estamos buscando alguém com pelo menos um ano de experiência em desenvolvimento web com Ruby on Rails. Mas o principal é gostar de aprender e de trabalhar em projetos inovadores.
Como se candidatar
rubem@agroinova.com.br
Cidade
São Paulo - SP
Empresa
Agroinova Tecnologia e Consultoria, Importação e Exportação Ltda


Fonte: OndeTrabalhar.com

[Dica] 11 repositórios online gratuitos para seus projetos

Figura 1: Ruby e Rails
Os repositórios online estão evoluindo bastante, passando de meros HDs virtuais para eficientes controladores de versão. Atualmente, temos muitas opções para hospedar nossos projetos na web, e relacionamos alguns deles para você guardar seu ‘precioso’ código. Caso já tenha utilizado algum destes, deixe suas impressões sobre o serviço nos comentários.
GitHub: O GitHub tem sido muito utilizado nos últimos tempos pelos desenvolvedores Rails, principalmente depois que o próprio framework passou a ser hospedado lá. Oferece ferramentas de colaboração, gerenciamento, revisão de código, wiki e outras coisas. Tem um plano gratuito para projetos open source.
Google Code: Se o Google já guarda seus contatos, seus documentos, seus vídeos e seus e-mails, porque não guardar também seus projetos? O Google oferece 2GB de espaço, ferramenta para criar wiki, visualização online dos códigos e feeds das atualizações, entre outros. É compatível com Subversion e Mercurial.
SourceForge: O bom (e velho) SourceForge está a mais de 10 anos hospedando projetos open source.  Oferece diversas ferramentas, como wiki, blog, estatísticas, mailing lists e mais um monte de coisas.
RubyForge: O RubyForge foi um dos primeiros repositórios voltado para aplicações Ruby. Oferece mailing lists, wikis, CVS/SVN, forum, e outras vantagens.
Assembla: O Assembla é um repositório pago, mas que oferece alguns planos free, voltados a projetos open source. Oferece 2GB de espaço, mais de 20 ferramentas e usuários ilimitados. Ao escolher o plano gratuito, tenha bastante atenção para as restrições, e não deixe de ler as letrinhas no final da página.
BitBucket: Pelo porte dos clientes que assinam os planos pagos, parece que o BitBucket é um lugar confiável para seu código. O plano gratuito (assim como os outros) oferece espaço ilimitado em disco, wiki, colaboradores (publicos) ilimitados e acesso a até 5 usuários registrados por projeto.
Beanstalkpo: Apesar de também oferecer serviços pagos, o Beanstalk tem um plano gratuito para você testar, com 100 MB de espaço, 1 usuário, 1 repositório e nada de SSL.
Freepository: Hospedando projetos desde 1999, o Freepository é compatível com Git ou SVN – mas o plano gratuito oferece acesso a um usuário com suporte apenas ao SVN.
unFuddle: Este site oferece um plano gratuito com 200MB de espaço, e 1 projeto para 2 usuários. Suporta SVN ou Git.
ProjectLocker: Pelo nome, percebemos que a segurança é o foco deste repositório. Oferece suporte a Git e SVN, com 500MB de espaço e acesso a 3 usuários por conta.
berliOS: O BerliOS Developer é um serviço gratuido para desenvolvedores em código aberto, com suporte a SVN/Mercurial/GIT. Tem listas, controle de bugs, quadro de mensagens/fórums, gerenciador de tarefas, e mais um monte de coisas.
No Google é possível encontrar muitos outros lugares para hospedar seus projetos. Caso você conheça algum que seja interessante (e gratuito), compartilhe conosco nos comentários.
Fonte: Ruby Brasil

[Dica] Aprenda Ruby: Curso On-line, por Satish Talim

No Ruby on Rails, é essencial o conhecimento em Ruby.
Por isso, para aqueles que querem aprender Ruby (e um pouco de inglês :P), aí vai uma dica:

- Curso online sobre Ruby, no site: http://www.rubylearning.org/class/.

Professor: Satish Talim

Figura 1: Professor Satish Talim


O site encontra-se em inglês. Mas o procedimento de matrícula para o curso é bem simples:

a. Criar uma conta.
b. Logo após o registro, confirme o cadastro no e-mail.
c. Vá para o site novamente, clique no curso e coloque o "enrollmente key".

Abraços!


Links relacionados:
http://rubylearning.org/class/

[Oportunidade] Desenvolvedor Ruby - SP

A Incube procura por desenvolvedor Ruby !

Somos uma Startup focada em desenvolvimento mobile (ou fábrica de apps especialista em negócios de mobilidade IOS e Android) com ambiente descontraído , inovador e muito desafiador.

Trabalhamos com um stack moderno, um stack KISP (keep it simple & powerful) que pode mesclar Ruby (Rails, Sinatra...), Node.js (Express.js, Meteor), Mongodb, Redis, sidekiq, coffeescript, backbone.js, Postgres, Git, dentre outros.

Área de Atuação: 

Desenvolvimento / Programação em Ruby on Rails

Pré-requisitos para a vaga: 
- Experiência com Ruby;
- Experiência com o framework Rails;
- Experiência com Javascript e Jquery;
- Experiência prática com sistemas *nix;
- GIT;
- TDD/BDD;
- Noções básicas de CSS;
- Noções de metodologias de desenvolvimento ágil (SCRUM).

São diferenciais:
- Experiência com outros frameworks Ruby como: Sinatra, Rack, Padrino;
- Experiência com Heroku, PostgreSQL, Memcached, RESTful, NoSQL (MongoDB, Redis), Cloud Computing (AWS);
- Experiência com algum framework MVC ou MVVM em Javascript (Ex: Backbone, Ember.js, Angular.js);
- Perfil no GITHUB (Com projetos próprios ou colaborações Open Source).

A vaga é presencial.

Idiomas:
Necessário inglês técnico

Forma de Contratação:
PJ ou CLT

Local: Higianópolis

Faixa Salarial:
A Combinar 
Como se candidatar
encaminhe seu currículo atualizado com pretensão salarial para rh@incube.mobi
Cidade
São Paulo - SP
Empresa
INCUBE

Fonte: OndeTrabalhar.com

[Dica] Como aprender Rails sem pagar nada

Cada vez mais pessoas estão interessadas em aprender a desenvolver aplicações web usando o Ruby on Rails. O framework mostrou que não era apenas um hype, e conquista novos adeptos diariamente. Além disso, existe uma crescente demanda por desenvolvedores Rails no Brasil – porém ainda pequena em relação ao que vemos no exterior.
De qualquer forma, existem várias maneiras de aprender a desenvolver aplicações web com Rails sem gastar dinheiro. Basta uma dose de interesse, boa vontade e paciência, requisitos inerentes a todo auto-didata. São muitos tutoriais espalhados pela internet listando artigos interessantes para quem está começando agora.
Em vez de citar inúmeros posts diferentes com artigos introdutórios, separamos quatro sites que oferecem cursos completos, com uma abordagem bem mais ampla sobre o Rails. Assim você poderá ir além do básico, seguindo a seqüência de um curso, e conhecendo o framework de forma mais abrangente.
Rails for Zombies
Esse site é o mais recente recurso para quem quer aprender a criar aplicações com Rails (sem gastar nada). Desenvolvido pela EnvyLabs, o curso é dividido em cinco etapas: CRUD, models, views, controllers e rotas. Cada etapa é composta por uma vídeo aula, com um teste ao final que habilita o aluno a passar para o próximo nível. As apresentações e os vídeos podem ser baixados – assim você poderá assistir depois no seu celular, por exemplo. É super recomendado, mas infelizmente, está apenas em inglês.
Apostila de Rails da Caelum
A Caelum disponibiliza para download gratuito a apostila do seu curso “Desenvolvimento Ágil para Web com Ruby on Rails 3″. São quase 150 páginas para te auxiliar no aprendizado do Rails. A apostila cobre itens de Ruby desde o básico da linguagem até meta programação, conhecimentos necessários para utilizar o Rails, onde são abordadas partes importantes como Active Record, rotas, Ajax, paginação e integração com Java. A apostila é muito didática, com exemplos práticos, permitindo compreender facilmente o conteúdo. Atualmente, esse é o melhor material sobre Rails 3 em português disponível na web para quem está começando.
Rails Tutorial
O Rails Tutorial é um famoso livro com versões impressa e online, escrito pelo Michael Hartl. A versão online é constantemente atualizada com todas as novidades que as releases do Rails trazem. O livro é bem didático, e permite que você aprenda rapidamente a dominar o Rails, através de exercícios que levam o aluno a desenvolver aplicações na prática para absorver os conceitos expostos no livro. O Michael também gravou uma série de video tutoriais, que podem ser adquiridos junto com a versão PDF do livro no próprio site.
Learning Rails
O site BuildingWebApps disponibiliza um curso grátis de Rails dividido em 23 lições. Até a lição 8, o conteúdo é composto de texto e áudio. A partir da lição 9 (quando começa a parte de desenvolvimento realmente), as lições são compostas de texto e vídeo. O curso da BWA aborda vários aspectos interessantes, desde a instalação até o controle de versões com Git, testes e deploy. Dois pontos negativos: primeiro é que o curso está em inglês. E o segundo ponto negativo é que ele foi baseado na versão 2.0 do Rails, ou seja, algumas coisas mudaram desde que foi escrito. Nos comentários das lições existem algumas observações sobre como executar os exemplos nas versões mais recentes do Rails, mas nem sempre há essa ajuda. O pessoal do site prometeu atualizar o conteúdo do curso até o fim de 2010, mas infelizmente parece que não cumpriram o prometido.
Outros links interessantes:
Rails Guides
Não tem lugar mais interessante para conhecer o Rails do que o guia do site oficial. O Rails Guides traz a documentação completa de tudo que você precisa para começar no Ruby on Rails. O melhor é que tem uma versão em português, apesar de estar desatualizada em relação ao original (em inglês). Mesmo assim, é parada obrigatória para quem está iniciando.
Rails Casts
Depois que você ler bastante sobre Rails, é interessante reforçar o aprendizado com os vídeos disponibilizados pelo pessoal do RailsCasts. O site oferece vários tutoriais em vídeo abordando desde temas básicos até alguns conceitos mais avançados.

Fonte: Ruby Brasil

[Oportunidade] Desenvolvedor Ruby on Rails - SP

1 – A empresa
O Grupo Bio Ritmo detém as marcas Smart Fit e Bio Ritmo, que juntas têm mais de 100 unidades no Brasil e no México. Somos a empresa com maior crescimento no segmento de fitness da América Latina. 
O departamento de desenvolvimento de software é peça chave dentro do grupo, que enxerga na tecnologia a simplificação de seus processos e maximização da eficiência de seus colaboradores. Nos esforçamos para manter um ambiente descontraído, onde a opinião de todos reflete nas decisões da equipe. Estamos em constante evolução e sempre abertos a novas tendências e tecnologias. 

2 – Descrição da vaga 

Procuramos um desenvolvedor Ruby on Rails que tenha interesse em ter contato com departamentos parceiros para cuidar do sistema de uma das maiores redes de academia da América Latina. A vaga é exclusivamente presencial em nosso escritório localizado na Avenida Paulista (período integral). 

3 – Perfil 

Estamos em busca do equilíbrio entre um excelente desenvolvedor e um ótimo analista de processos. 

4 – Requisitos técnicos 

Ser um excelente desenvolvedor Rails. Queremos alguém que programe o que todo mundo sabe programar, com qualidade e excelência. 



Conhecimentos exigidos: HTML, CSS, JavaScript, MySQL, Git, RSpec. 



Desejáveis: Resque, Capistrano, MySQL (avançado) e Scrum. 

5 – Desafios diários 

É essencial saber dividir o tempo entre o desenvolvimento de novas funcionalidades e o atendimento à operação do sistema. 

Simpatia. Não serão bem-vindos aqueles que não prezarem o bom atendimento aos clientes internos. 


6 – Salário: Traga sua proposta.
Como se candidatar
alexandre@bioritmo.com.brCidade
São Paulo - SPEmpresa


Fonte: OndeTrabalhar.com

[Dica] Escolha sua IDE para Ruby e Rails

Figura 1: RadRails, NetBeans, FreeRIDE
Os desenvolvedores do Netbeans anunciaram que a IDE não vai mais oferecer suporte ao Rails. Seria motivo para desespero? A resposta é não. Atualmente, os desenvolvedores Ruby e Rails possuem muitas opções de IDEs à disposição. No início, eram poucos os editores que reconheciam a linguagem, e mesmo assim eles não tinham muitos recursos. Com o tempo, novas ferramentas surgiram, buscando atender a todos os públicos. Mostramos a seguir algumas opções de IDEs para desenvolvimento de aplicações em Ruby e Rails para que você experimente e escolha a opção que melhor atenda as suas necessidades.
Netbeans 6.9 http://netbeans.org/downloads/index.htmlApesar do Rails ficar de fora da próxima release, quem gosta do Netbeans pode utilizar a versão 6.9.x que oferece suporte a linguagem Ruby e ao Rails 3 (além do JRuby), mantendo-se por enquanto como opção para os desenvolvedores. O Netbeans é meio pesadão, mas a produtividade que ele oferece compensa. A versão para desenvolvedores Ruby tem 88 MB, e a versão completa tem mais de 300 MB. Tem versões para Windows, Mac, Linux e Solaris, em português.
Aptana RadRails - http://www.aptana.com/products/radrails
Outra excelente opção para programadores Ruby e Rails, o RadRails é uma IDE profissional com suporte a criação de projetos/navegação de arquivos, debugger visual, assistência na codificação, visualização das gems/APIs/plugins utilizadas no projeto, etc. O visual do RadRails revela que foi desenvolvido a partir do Eclipse, ou seja, podemos contar com as ferramentas (e plugins) deste poderoso editor. O RadRails possui versões para Windows, Mac e Linux.
Eclipse + RadRails Plugin – http://www.eclipse.org/downloads/
Se você gosta do Eclipse ou já usa essa IDE e não quer perder suas configurações, pode deixá-la pronta para o Rails através do plugin RadRails. Assim o programador pode ter numa mesma ferramenta a possibilidade de desenvolver em várias linguagens, como o Ruby, Java e PHP, por exemplo. O Eclipse é repleto de recursos que auxiliam bastante no desenvolvimento, como os plugins para interação com git/github. Além da vantagem adicional de ser multiplataforma (roda no Windows, Linux e Mac).
EasyEclipse Ruby e Rails - http://www.easyeclipse.org/site/distributions/ruby-rails.html
O EasyEclipse é uma versão do Eclipse com alguns plugins para os desenvolvedores Ruby/Rails. Tem a vantagem de ser uma ferramenta bem completa, cheia de funções e facilitadores. Infelizmente, parece que está abandonado pelos seus idealizadores. Roda no Windows, Linux e Mac.
jEdit http://www.jedit.org/
O jEdit é um editor escrito em Java, popular entre os programadores desta linguagem, e Ruby é uma das 130 linguagens que ele reconhece. Também tem um plugin que o deixa ainda mais familiarizado com Ruby e Rails. Tem versões para Windows, Mac e Linux.
FreeRIDE - http://freeride.rubyforge.org/O FreeRIDE é uma IDE desenvolvida em Ruby. Ela possui as funções básicas de um editor – auto identação, coloração da sintaxe, debug, etc. Aliás, acho que o FreeRIDE se encaixa melhor na categoria “editores turbinados“. Para quem gosta de ir testando linha a linha seu código, o FreeRIDE traz o shell interativo do Ruby integrado. O FreeRIDE tem versões para Windows e Linux, e também parece não estar recebendo atualizações.
RDE http://homepage2.nifty.com/sakazuki/rde_en/index.html
O RDE (Ruby Development Environment) é uma IDE para desenvolvimento com foco em Ruby. Permite executar os códigos antes de salvar, oferece opções de debug, coloração da sintaxe, etc.
Conhece alguma outra IDE que não entrou nesta lista? Então compartilhe nos comentários!
Fonte: Ruby Brasil

quinta-feira, 18 de julho de 2013

[Oportunidade] Desenvolvedor Ruby on Rails - RJ

Descrição da vaga 

Hoje a equipe de desenvolvimento conta com apenas 1 pessoa e agora estamos procurando ampliá-la com mais um desenvolvedor web com alguma experiência em Ruby on Rails.
Como a equipe é pequena e iniciada há pouco tempo (1 ano), temos bastante espaço para novas opiniões e estamos sempre procurando utilizar o que há de melhor.

Obs: A vaga é presencial

Competências e experiências desejadas

Pré-requisitos: 
Conhecimento sólido em desenvolvimento web utilizando Ruby on Rails e MySql;
Conhecimento em modelagem e arquitetura de software;
Noções de design com CSS3 e HTML5
Linux;
Git 
Desejado: 
Conhecimento em práticas ágeis (Scrum, TDD, integração contínua, refactoring);
Testes automatizados (rspec);
Utilização de Amazon Web Services (SES, S3, EC2)

Descrição da empresa 
Instituição Financeira com mais de 30 anos de mercado, atuante nas áreas de gestão de patrimônio e serviços fiduciários buscando desenvolver uma nova forma de se relacionar com seus clientes através de portal.

Informações adicionais

Tipo: Tempo integral
Remuneração: Salário, 13º, bônus semestral
Como se candidatar
email para: adriano.bacha@simplificpavarini.com.br
Cidade
Rio de Janeiro - RJ
Empresa
Simplific Pavarini


Fonte: OndeTrabalhar.com

[Tutorial] Criando sua primeira aplicação com Rails

Este tutorial é uma rápida introdução ao Rails, que pretende ajuda-lo a entender como o framework funciona – e porque somos apaixonados por ele. Neste texto, você irá aprender alguns conceitos básicos do Rails, sua estrutura e como ele funciona, através de um exemplo prático. Lembro que você pode instalar o Rails facilmente no Windows usando o RailsInstaller.
Antes, uma breve introdução: O que é o Rails?
O Ruby on Rails é um framework projetado para agilizar o desenvolvimento de aplicações web, utilizando a linguagem Ruby. Ele possibilita que você concentre seus esforços em resolver o problema do seu cliente, deixando a parte (chata) da estrutura da aplicação por conta do framework.
Com o Rails, você não precisa se preocupar em montar a camada de acesso ao banco de dados quando iniciar um projeto. Nem como irá organizar os arquivos que irão compor a aplicação. Seguindo o “Rails Way” (ou o “modo Rails” de fazer as coisas) você irá ganhar em tempo e produtividade. Basta respeitar as convenções, ou seja, as regras do Rails. Essas são as vantagens de usar um bom framework: O trabalho não começa do zero, e você tem que seguir padrões, obrigando a organizar-se. Acredite, isso vai ajudar bastante no trabalho em equipe, na manutenção do código, ou caso outro desenvolvedor assuma o projeto futuramente.
Falando em organização, o Rails utiliza o padrão MVC, que divide a aplicação em partes com funções bem definidas. É importante entender o que é o MVC, pois isso irá ajudar a compreender a lógica do Rails.
MVC (Model-View-Controller)
Nas palavras da Wikipedia, o MVC “é um padrão de arquitetura de software que visa a separar a lógica de negócio da lógica de apresentação, permitindo o desenvolvimento, teste e manutenção isolado de ambos“. Como as aplicações estão cada vez mais complexas, tornou-se importante separar o acesso aos dados/lógica de negócios (model), interface (view), e interação (controller). Isso facilita bastante a manutenção do código e deixa a estrutura da aplicação bem organizada.
Model (modelo)
A camada do modelo é onde estão as classes para as entidades que sua aplicação possui. Considere como exemplo um blog: queremos armazenar os artigos em posts – então teremos um modelo “post”. Podemos implementar comentários também – então teremos um modelo “comentario”. Autores irão escrever os posts – então teremos o modelo “autor”. No Rails, entre outras coisas, o modelo gerencia os relacionamentos, as validações de dados e faz a comunicação com o banco de dados, recuperando e armazenando informações, graças a biblioteca ActiveRecord.
View (visão)
A visão (view), como o nome diz, é responsável pela parte visual da aplicação, onde o usuário faz as requisições (ao clicar num botão, por exemplo) e também onde são apresentadas as informações de resposta. Anview trabalha com HTML e comandos Ruby misturados em arquivos erb (Embedded Ruby), de forma semelhante ao PHP ou ASP. Por conta disso, você vai perceber que os arquivos da view são terminados com *.html.erb. As visões estão constantemente enviando e recebendo informações do controle – a camada C do MVC.
Control (controle)
Alguém deve fazer o meio de campo entre o model e a view: esse é o papel do controle. Podemos dizer que o controle é quem faz as coisas acontecerem dentro do MVC, pois ele recebe a ação da view, pesquisa (ou trata) o resultado junto ao model e devolve o resultado para a view, fazendo girar o ciclo de atividades dentro do MVC.
Caso queira aprender mais sobre MVC, uma busca no Google vai oferecer artigos mais profundos e esclarecedores sobre esse padrão. Mas para você aprender de verdade, nada como colocar a mão na massa; Então vamos prosseguir.
O cardápio do dia
Nesse tutorial, não vamos inventar muito: iremos montar um blog, pois provavelmente você já acessou algum e conhece como ele funciona. Isso torna mais simples assimilar algumas coisas. E caso nunca tenha acessado um blog, voilá! O RubyBrasil é um blog – com esteróides.

Esse será o resultado do tutorial
Antes de começar, é necessário ter em mente a estrutura da nossa aplicação de exemplo. Um blog pode ter postsautores que escrevem os posts e comentários sobre os posts. Posts também podem pertencer a categorias e serem identificados por tags. Mas para que esse artigo não fique muito extenso, vamos simplificar: teremos apenas posts e comentários no nosso exemplo. Importante: Tenha em mente que um post pode ter vários comentários, entretanto cada comentário pertence a um post.
Criando um novo projeto
Chegou a hora de começar, criando nosso projeto. No Rails, um projeto é uma estrutura de pastas usada para armazenar os arquivos que irão compor sua aplicação. Uma ferramenta essencial durante o desenvolvimento Rails é o prompt de comandos (no windows) ou o terminal (no linux). Para criar nosso projeto, acesse o prompt de comando ou terminal e digite o comando abaixo.
$ rails new blog
Este comando irá fazer com que o Rails crie um diretório chamado blog, e monte dentro dele uma estrutura padrão de pastas e arquivos. Os mais importantes para nós, por enquanto, são esses:
ArquivoFunção
config\database.ymlContém informações para conexão da aplicação com o banco de dados, como login e senha do SGBD.
config\routes.rbArquivo onde definimos como as requisições HTTP serão roteadas.
app\controllers\Contém os arquivos escritos em Ruby da camada controle (o C do MVC).
app\helpers\Contém os helpers, classes que facilitam algumas tarefas (como criar formulários).
app\models\Contém os arquivos escritos em Ruby da camada model (o M do MVC).
app\views\Contém uma pasta para cada controle que sua aplicação tiver.
db\migrate\Contém os arquivos de migração, usados para migrar o banco de dados de um estado para outro.
.
Acelerando o desenvolvimento com scaffold
Scaffold, em inglês, significa andaime. É o termo certo para o que ele faz: Cria a estrutura básica de um elemento dentro do seu projeto para que possamos desenvolver a aplicação. Num comando simples, o scaffold gera o modelo, o controle, e as visões (dentre outras coisas), adiantando bastante o seu trabalho. O scaffold pode ser usado também para construir protótipos rápidos, para mostrar ao seu cliente o andamento do trabalho.
Usando scaffold para criar os posts
Para criar os arquivos necessários para gerenciar os posts do nosso blog usando scaffold, primeiro devemos acessar a pasta da nossa aplicação.
$ cd blog/
Depois, estando dentro do diretório blog, basta uma única linha de comando. Nosso post terá o nome do autor, o titulo do post, e o conteúdo.
$ rails generate scaffold post titulo:string conteudo:text
Atente-se ao padrão do comando, que é formado pelo nome do modelo (post), seguido dos campos com seus respectivos tipos de dados (por exemplo, titulo:string econteudo:text).
Como dito antes, esse comando gera um monte de arquivos. Ele cria o modelo chamadopost.rb na pasta app/models, o posts_controller.rb (no plural) na pasta app/controllers, além de criar também as visões na pasta app/views. Ressalto que o Rails organiza as views através de pastas com o nome dos modelos existentes. Então, o scaffold vai gerar uma pasta dentro de app/views com o nome posts, contendo quatro arquivos dentro dela: index.html.erbedit.html.erbshow.html.erb e new.html.erb. Ou seja, o Rails já criou uma view para algumas ações básicas relacionadas ao item post.
Usando scaffold para criar os comentários
Da mesma forma como criamos os posts, vamos criar também os comentários usando scaffold, através do comando abaixo.
$ rails generate scaffold comentario autor:string conteudo:text post:references
Desta vez, temos algo diferente no fim do comando. Informamos que cada comentário faz referência a post. Isso vai ajudar o Rails a montar o relacionamento entre as tabelas no banco de dados. O Rails saberá que deve criar um campo de chave estrangeira na tabela comentarios, ligando com a chave primária da tabela posts.
Relacionando os modelos Post e Comentario
No banco de dados está tudo OK, mas ainda será necessário explicitar o relacionamento entre post e comentario nos modelos das entidades. Para isso, acesse a pasta app/models e faça uma alteração no arquivo post.rb.
Abra o arquivo e acrescente nele a informação de que há muitos comentários para cada post.
1
2
3
class Post < ActiveRecord::Base
  has_many :comentarios
end
O arquivo comentario.rb, como foi criado por último e recebeu o post:references em sua definição, já possui a informação de que cada comentário pertence a um post, como você pode conferir.
1
2
3
class Comentario < ActiveRecord::Base
  belongs_to :post
end
No model comentario.rb não será necessário mexer. Mas logo você verá como será simples fazer com que cada post identifique seus comentários (e vice-versa) graças a esses pequenos comandos milagrosos.
E o banco de dados?
Você pode deixar o gerenciamento do banco de dados nas mãos do Rails. Em alguns casos, vai ser preciso configurar o arquivo database.yml com as informações do banco de dados que deseja utilizar. A partir de então, outras tarefas como criar tabelas, colunas, etc recomenda-se que sejam feitas a partir do Rails, para maior controle.
No nosso caso, vamos usar o banco de dados SQLite, que já vem configurado por padrão quando criamos uma aplicação Rails. Caso você quisesse usar outro banco de dados, como o MySQL, poderia ter informado já na criação da aplicação, como valor do parâmetro d.
$ rails new blog -d mysql
Continuando nossa missão, vamos mandar o Rails criar o banco de dados da aplicação, usando o comando Rake.
$ rake db:create
Pronto, temos nosso banco de dados SQLite criado. Se fosse um MySQL ou qualquer outro que ele suporte, seria a mesma coisa: também teríamos criado a base de dados da mesma forma com esse comando.
As migrações
No Rails, migração é a mudança do banco de dados de um estado para outro. Por exemplo, ao criar uma nova tabela, você altera o estado do banco de dados. Ao incluir/excluir uma coluna de determinada tabela, você altera o estado do banco de dados. Ou seja, alterações na estrutura do banco mudam seu estado, e as migrações permitem que você volte o banco de dados a estados anteriores, desfazendo alterações mal-sucedidas ou desnecessárias.
Quando usamos o scaffold para criar o post e o comentário, também foram criadas suas respectivas migrações, contendo as alterações que serão necessárias fazer ao banco de dados (como criar as tabelas com as colunas informadas). As migrações podem ser conferidas na forma de arquivos individuais na pasta db/migrate.
Vamos executar as migrações pendentes para que os modelos post e comentario possam armazenar seus respectivos dados no banco.
$ rake db:migrate
O Rake é uma ferramenta muito útil no ecossistema do Rails, com várias funções. Você pode aprender mais sobre ele na documentação do Rails.
Vamos ver como está?
Nesse momento, já é possível ver como está ficando nossa aplicação, inclusive testar seu funcionamento. Como o Rails é voltado para aplicações web, será necessário usar um servidor web para rodar o sistema. O próprio Rails possui um servidor chamado Webrick, que serve justamente para ajudar o desenvolvedor a acompanhar o progresso da aplicação.
Inicie o servidor com o comando abaixo no prompt/terminal:
$ rails server
Agora, abra o navegador web de sua preferência e acesse o endereçohttp://localhost:3000/posts para ver o que aparece. Localhost é o endereço local de sua máquina, 3000 é a porta que o servidor Webrick normalmente usa e posts é o nome do controle que desejamos acessar. Por padrão, essa URL irá acionar o método “index” deposts_controller.rb, que por sua vez utilizará a visão “index.html.erb” dentro da pasta app/views/posts.
Quando você clica no link New Post, o navegador acessa o endereçohttp://localhost:3000/posts/new, que contém um formulário para adicionar novos posts. Nesse momento, você está acionando o método “new” de posts_controller.rb, que irá chamar a visão “new.html.erb” na pasta app/views/posts.
Ao clicar no botão Create Post, seu post será salvo e o navegador redirecionado à URLhttp://localhost:3000/posts/show/1, que mostra os detalhes do post. Essa URL chama o metodo “show” do controle posts_controller.rb, passando como valor o id do post cujos detalhes deverão ser mostrados. No caso, está sendo apresentado o detalhe do post de código “1″, através da view “show.html.erb“.
Clique em “New Post” e faça alguns cadastros. Teste os links “Show“, “Edit” e “Destroy“. Tudo funcionando. Por isso que o Ruby on Rails faz tanto sucesso. Até aqui, temos um cadastro de posts plenamente funcional, feito em pouco tempo e com meia dúzia de comandos simples. Caso queira encerrar o servidor e liberar o prompt/terminal, tecle Control + C.
As rotas levam ao post
O endereço da nossa aplicação não está muito intuitivo, pois temos que digitar o nome do controle que queremos acessar (posts). Vamos configurar a aplicação de forma que digitando apenas http://localhost:3000/, o Rails saiba redirecionar para o controle de posts. Quando o objetivo é configurar o direcionamento das páginas, dizemos que é uma mudança de roteamento. Essas configurações estão no arquivo config/routes.rb.
Para que possamos eliminar a necessidade de colocar o controle posts no endereço, temos que fazer duas coisas. A primeira é deletar o arquivo public/index.html, que é criado automaticamente junto com o projeto. Esse arquivo tem apenas as informações sobre a versão do Rails e o ambiente de instalação, e temos que exclui-lo para poder avaliar o resultado da configuração das rotas.
A segunda coisa a fazer é configurar as rotas no arquivo config/routes.rb. Abra o arquivo no seu editor favorito e adicione uma linha definindo qual o controle#método será root, como mostramos abaixo. Nessa configuração, dissemos ao Rails que queremos na página inicial do site o método index do controle posts.
1
2
3
4
5
Blog::Application.routes.draw do
  resources :comentarios
  resources :posts
  root :to => "posts#index" #linha adicionada
end
Perceba que removemos as linhas de comentário para facilitar o entendimento do que deve ser alterado nesse arquivo.
As rotas levam aos comentários
Aproveitando que estamos configurando as rotas, vamos fazer outra alteração. Até o momento, para nossa aplicação Rails, posts estão numa página, e comentários em outra. Mas não é esse nosso interesse realmente. Queremos colocar os comentários na mesma página do seu post correspondente, para que seja mais simples de serem visualizados – como costumamos ver por aí nos blogs.
A alteração a ser feita é bem simples: basta dizer às rotas que o ‘recurso’ post contém o ‘recurso’ comentários.
1
2
3
4
5
6
Blog::Application.routes.draw do
   resources :posts do
      resources :comentarios
   end
   root :to => "posts#index"
end
Preparando a visão para receber os comentários
Será necessário modificar a visão show dos posts (arquivo app/views/posts/show.html.erb) para que ela mostre, além do conteúdo dos posts, também os comentários cadastrados relacionados a ele e o formulário para adicionar novos comentários.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<p class="notice"><%= notice %></p>
 
<p>
  <b>Titulo:</b>
  <%= @post.titulo %>
</p>
 
<p>
  <b>Conteudo:</b>
  <%= @post.conteudo %>
</p>
 
<h2>Comentarios</h2>
<% @post.comentarios.each do |comentario| %>
  <p>
    <b>Autor:</b>
    <%= comentario.autor %>
  </p>
 
  <p>
    <b>Comentario:</b>
    <%= comentario.conteudo %>
  </p>
<hr />
<% end %>
 
<h2>Adicione um comentario:</h2>
<%= form_for([@post, @post.comentarios.build]) do |f| %>
  <div class="field">
    <%= f.label :autor %><br />
    <%= f.text_field :autor %>
  </div>
  <div class="field">
    <%= f.label :conteudo %><br />
    <%= f.text_area :conteudo %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>
 
<br />
 
<%= link_to 'Edit Post', edit_post_path(@post) %> |
<%= link_to 'Back to Posts', posts_path %>
Resista à tentação de cadastrar algum comentário nesse instante, pois o controlecomentarios_controller.rb ainda não está pronto para receber seu comentário. Essa é a próxima etapa.
Modificando o controle comentario
Vamos preparar o controle dos comentários para que ele saiba o que fazer quando algum usuário enviar sua opinião através do formulário. Inicialmente, remova os métodos criados por padrão – não vamos precisar deles. Adicione um novo método chamado “create“, como mostra o código abaixo. Esse simples código irá salvar o comentário no banco de dados, já relacionando-o com o post correspondente. Vamos aproveitar e incluir também um método para excluir os comentários indesejados, com o nome de destroy.
1
2
3
4
5
6
7
8
9
10
11
12
13
class ComentariosController < ApplicationController
   def create
    @post = Post.find(params[:post_id])
    @comentario = @post.comentarios.create(params[:comentario])
    redirect_to post_path(@post)
   end
   def destroy
    @post = Post.find(params[:post_id])
    @comentario = @post.comentarios.find(params[:id])
    @comentario.destroy
    redirect_to post_path(@post)
  end
end
Após essas alterações, atualize o navegador para ver como ficou (veja no terminal/prompt se o servidor ainda está rodando). Cadastre alguns comentários para ver funcionando.
Validação no modelo para evitar posts vazios
Apesar do visual não muito parecido com um blog, nossa aplicação já está funcional. Mas vamos aproveitar para conhecer mais algumas funcionalidades que o Rails oferece para nós. Uma delas é a validação de dados, evitando que sua aplicação receba dados inconsistentes. As validações estão relacionadas diretamente aos dados, dessa forma elas são feitas nos modelos.
Vamos aplicar uma validação para que não seja aceito post sem título e sem conteúdo. Até porque um post sem titulo e sem conteúdo não é um artigo válido, certo? Abra o modelo app/models/post.rb e adicione as validações, conforme abaixo.
1
2
3
4
5
class Post < ActiveRecord::Base
   has_many :comentarios
   validates :titulo, :presence => true, :length => { :minimum => 10 }
   validates :conteudo, :presence => true
end
Acabamos de definir que a presença do titulo é obrigatória, além de que deverá ter 10 caracteres no mínimo. O conteúdo apenas tem que obrigatoriamente ser preenchido.
Implementando segurança
Aproveitando outra funcionalidade que o Rails oferece – autenticação HTTP – vamos estabelecer duas simples regras de segurança no nosso blog. Primeiro: Para adicionar um post, o usuário tem que autenticar-se com login e senha. Segundo: Para apagar um comentário, também será necessário autenticação.
Essa regra vai incidir sobre os controles, pois as autenticações serão solicitadas apenas em determinadas ações (métodos). Em vez de implementarmos essa regra noposts_controller.rb e depois repeti-la nos comentarios_controller.rb, vamos adiciona-la uma única vez num lugar onde toda a aplicação poderá enxerga-la. Esse lugar é oapplication_controller.rb, o super-controle cujas regras atingem toda aplicação. Ele evita que você fique espalhando a mesma instrução em vários controles diferentes.
Acesse o arquivo em app/controllers/application_controller.rb e adicione as seguintes linhas:
1
2
3
4
5
6
7
8
9
10
11
12
class ApplicationController < ActionController::Base
  protect_from_forgery
 
  private
 
  def autenticacao
    authenticate_or_request_with_http_basic do |usuario, senha|
      usuario == 'admin' && senha == 'abracadabra'
    end
  end
 
end
Nas linhas acima, definimos uma regra de autenticação, e já configuramos qual será o usuário/senha. Agora temos que sair inserindo onde essa autenticação será necessária.
A primeira autenticação vai ficar nos posts. Abra o controle app/controllers/posts_controller.rb e acrescente a regra de autenticação logo abaixo da definição de classe. Não apague nada do que está lá, pois os outros métodos ainda serão utilizados.
1
2
3
4
5
6
class PostsController < ApplicationController
   before_filter :autenticacao, :except => [:index, :show] # linha adicionada
 
  # GET /posts
  # GET /posts.xml
...
Perceba que usamos :except, ou seja, a validação será requerida em todos os métodos excetoindex e show. Será solicitado usuário/senha para adicionar, editar e excluir posts.
Agora no controle dos comentários, adicionaremos também a validação. Desta vez, usaremos o parâmetro : only em vez de :except. Abra o app/controllers/comentarios_controller.rb e adicione a linha com a validação.
1
2
3
class ComentariosController < ApplicationController
   before_filter :autenticacao, :only => [:destroy] # linha adicionada
...
Melhorando o visual
Por fim, vamos mexer na aparência de nossa aplicação, pois ela parece várias coisas, menos um blog. Como você deve se lembrar do nosso discurso sobre MVC, a parte responsável pelo visual é a view. Nesse exemplo, iremos fazer uma plástica as duas visões mais requisitadas, aindex e a show.
Abra a visão index do post (app/views/posts/index.html.erb), e substitua o código padrão que está lá por este:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<h1>Meu Blog</h1>
 
<% @posts.each do |post| %>
<h2><%= link_to post.titulo, post %></h2>
<p><%= post.conteudo %></p>
<%= link_to 'Ver mais', post %>
<%= link_to '[Editar]', edit_post_path(post) %>
<%= link_to '[Excluir]', post, :confirm => 'Tem certeza?', :method => :delete %>
<hr />
<% end %>
 
<br />
 
<%= link_to 'Novo Post', new_post_path %>
Essas poucas linhas irão resolver. Caso você tenha vários posts cadastrados, já perceberá a diferença.
Agora abra a visão show do post (app/views/posts/show.html.erb) e troque o código que está lá por este.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<h1>Meu Blog</h1>
<p class="notice"><%= notice %></p>
 
<h2><%= @post.titulo %></h2>
<p><%= @post.conteudo %></p>
 
<h3>Comentarios</h3>
<% @post.comentarios.each do |comentario| %>
  <p>
    <b>Autor:</b>
    <%= comentario.autor %>
  </p>
 
  <p>
    <b>Comentario:</b>
    <%= comentario.conteudo %>
  </p>
<p>
  <%= link_to 'Apagar Comentario', [comentario.post, comentario],
               :confirm => 'Tem certeza?',
               :method => :delete %>
</p
<hr />
<% end %>
 
<h3>Adicione um comentario:</h3>
<%= form_for([@post, @post.comentarios.build]) do |f| %>
  <div class="field">
    <%= f.label :autor %><br />
    <%= f.text_field :autor %>
  </div>
  <div class="field">
    <%= f.label :conteudo %><br />
    <%= f.text_area :conteudo %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>
 
<br />
 
<%= link_to 'Editar Post', edit_post_path(@post) %> |
<%= link_to 'Voltar aos Posts', posts_path %>
Pronto! Temos um blog funcional desenvolvido em Rails.
O que falta?
Falta trabalhar os menus, um sistema de autenticação mais profissional, um layout mais interessante… Só não falta vontade de aprender, tenho certeza. Com o conhecimento adquirido até aqui, você já é capaz de descobrir muitas coisas sozinho. Reforce seu conhecimento com outros recursos online, eles irão aprofundar mais nos conceitos que abordamos superficialmente.
Além disso, você pode aprender também através de livros. Recomendo o recém-lançadoRails 3 Básico, que você pode comprar com um super desconto na loja virtual da Novatec. O livro é voltado para iniciantes e, apesar do nome, vai além do básico. O conteúdo é bem atualizado e a didática é excelente, tenho certeza de que você irá aprender bastante com ele.
Fonte: Ruby Brasil