Simplicidade, dedicação e trabalho, esse é o caminho!

Page.reload com o jrails

Posted: November 26th, 2008 | Author: Márcio Gasparotto | Filed under: Dicas, ruby on rails | Tags: , , | Comente! »

No rails 2.2 foi adicionado um novo helper para os templates .rjs o reload, pra quem assim como eu, usa o jrails para trocar o prototype pelo jquery fica essa dica, pois até o momento pessoal do jrails não atualizou o mesmo, portanto se você chamar o page.reload usando o jrails vai quebrar.

Para solucionar o problema é simples, basta incluir o codigo abaixo no arquivo jrails.rb (vendor/plugins/jrails/lib/jrails.rb) dentro da Classe JavaScriptGenerator e do Módulo GeneratorMethods.

Abraço!


Ubuntu 8.10 + Ruby + Rails + Gedit + Git = Ótimo ambiente!

Posted: October 31st, 2008 | Author: Márcio Gasparotto | Filed under: Gedit, Git, Linux, Ubuntu, ruby on rails | Tags: , , , | 18 Comentários »

Ontem (30-10-2008) foi liberado o Ubuntu 8.10 (Intrepid Ibex), e eu como sempre não aguento esperar,  desta vez eu já vinha me preparando (fazendo backps, etc..) pra formatar minha máquina. Foi só baixar o .iso queimar no cd colocar no drive e mais uns 20 minutos o Intred já estava rodando.

1 etapa: Configurações Básicas do sistema

Eu sempre instalo as bibliotecas e programas para áudio, video, gerenciador de clipboard, etc…mas isso era meio chato, mas isso já era! O Hamacker fez um script que faz tudo isso, você só precisa selecionar o que quer e pronto! Parabéns Hamacker pelo ótimo trabalho!

2 etapa: Instalando o Ruby e o Rails

a) Abra o terminal e execute o comando:

sudo apt-get install ruby irb ri rdoc ruby1.8-dev libzlib-ruby libyaml-ruby libreadline-ruby libncurses-ruby libcurses-ruby libruby libruby-extras libfcgi-ruby1.8 build-essential libopenssl-ruby libdbm-ruby libdbi-ruby libdbd-sqlite3-ruby libsqlite3-dev libsqlite3-ruby libxml-ruby libxml2-dev

b) Baixe a ultima versão do rubygem (neste data é a 1.3.1), extraia em um diretório, entre nesse diretorio através do terminal (cd diretorioondeextrai) e execute o seguinte comando:

sudo ruby setup.rb

c) Agora vamos instalar o Rails, no terminal execute:

sudo gem install rails

E depois

sudo gem install sqlite3-ruby mongrel capistrano

d) Agora vamos instalar o mysql e suas bibliotecas, o instalador pedirá pra você escolher uma senha para o usuário root do mysql, eu deixo em branco, pois só uso minha maquina pra desenvolvimento, mas se quiser é só digitar a senha que preferir, no caso de maquinas de produção, pelo amor de Deus, você DEVE por uma senha…rs.

sudo apt-get install mysql-server mysql-client libdbd-mysql-ruby libmysqlclient15-dev

Tive por base este post que era para o ubuntu 8.04. Pronto! neste momento seu ambiente ruby, rails e mysql já está configurado, vamos agora ajustar o gedit.

3 etapa: Instalando os plugins para o Gedit

O Gedit vem instalado por padrão no ubuntu/gnome, entáo só vamos incrementá-lo.

a) vamos começar instalando um pacote padrão de plugins

sudo apt-get install gedit-plugins

b) Agora vamos baixar o Gmate, criado pelo Alexandre, que recomendo a todos que usam o gedit e rails acompanharem pois ele tem feito muita coisa legal, fica aqui também os meus parbéns para o Alexandre.

Na página do Gmate no github tem as instruções para a instalação do mesmo. Outro plugin que eu sempre instalo e não está no gmate é o Advanced Bookmarks (no final da página mostra como instalar).

LEMBRE-SE: para ativar esses plugins e ajustar o visual e as demais configurações do Gedit você deve clicar em Editar->Preferências ai você poderá ajustar da sua maneira.

d) E tem mais, segue os links para instalar o notificador de testes (autotest) e melhorar a aparencia da famosa fonte Monaco no Ubuntu/Gedit.

UPDATE: Instalando fonts: Uma das maneiras de instalar fonts no ubuntu é criar um diretório chamado .fonts na pasta home/seunomedeusuario e colocolar as fontes que deseja dentro dele, atenção para o . (ponto) antes do nome fonts, isso significa que o diretório será oculto e da próxima vez você não o verá por padrão, mas basta dar um ctrl+h que todos os diretórios ocultos aparecerão inclusive o .fonts é claro….dããã.

4 etapa: Instalando mais ferramentas (Git, Subversion, etc)

a) Instalar o git.

sudo apt-get install git-core git-doc git-svn git-gui gitk

git-svn é para integração com repositórios subversion, e git-gui e gitk são front-end para o git no caso você poderia escolher apenas um.

b) Instalar o subversion

sudo apt-get install subversion subversion-tools

c) Front-end para o mysql

sudo apt-get install mysql-admin mysql-query-browser

PRONTO! É isso, epero que ajude, e quem tiver dúvidas ou sugestões é só enviar. Abraço!


Ruby on Rails 2.2 – O que há de novo

Posted: October 27th, 2008 | Author: Márcio Gasparotto | Filed under: Dicas, ruby on rails | Tags: , | 2 Comentários »

Acabei de adquirir o livro Ruby on Rails 2.2 – O que há de novo, e aproveito para parabenizar o Carlos Brando, pelo excelente trabalho. Parabéns Carlos!

Só li umas 15 ou 20 páginas ainda, mas já vi muita coisa legal, como especificar conditions usando hash e as mudanças no método validates_length_of.

Fica aqui a dica, comprei o pacote contendo o livro e o screencast por $16,00. Na cotação de hoje saiu por apenas R$36,80 o que acho que é até um valor simbólico pela qualidade e importância do conteúdo.


Dica rápida usando o ApplicationHelper.

Posted: August 21st, 2008 | Author: Márcio Gasparotto | Filed under: Dicas, ruby on rails | Tags: , | 2 Comentários »

Essa é bem simples, coisa básica, mas que uso sempre.

Praticamente todas aplicações tem tabelas em que uma das colunas é usada para setar o status/situação do registro, eu costumo gerar esses campos através de migrates assim: status:boolean, na hora de exibir esse registro ao usuário precisamos tratá-lo, pois mostrar true ou false convenhamos que não é legal.

Seguindo o principio de DRY do rails a solução é bem simples.

No application_helper.rb coloco a seguinte função:

Na view basta usar assim:

A explicação é bem simples, a função ativo_inativo recebe um parâmetro true ou false e através de um operador ternário devolve Ativo ou Inativo, lembre-se a função agora está disponivel para toda a aplicação, sem repetições.

Abraço!