Netbeans 7.1 e Rails

A minha opção preferida para trabalhar com Rails é o NetBeans, mas a partir da versão 6.9 a não há mais suporte oficial para da Oracle para Ruby on Rails,  desde então o suporte é mantido pela comunidade com um plugin não oficial.

Então mãos a obra:

Vamos começar instalando o NetBeans, há várias opções de instalação escolheremos a mais leve que é o NetBeans for PHP.

http://netbeans.org/downloads/index.html

Depois de baixado o seguinte comando na pasta do arquivo:

sh netbeans-7.1-ml-php-linux.sh

Siga as orientações da tela de instalação. Após a conclusão da instalação abra o netbenas clieque e:

Ferramentas >> Plug-ins na aba “Configuração” clique em adicionar

Preenchas os campos da seguinte forma:

Nome: Rails

URL: http://deadlock.netbeans.org/hudson/job/ruby/lastSuccessfulBuild/artifact/build/updates/updates.xml

Confirme, em seguida na aba “Plug-ins disponíveis” clique em “Recarregar catálogo” procure por rails e instale o plug-in.

Reinicie o NetBeans e a sua IDE já estará configurada.

Anúncios

Como customizar (editar) as views geradas pelo scaffold no Rails

Durante um bom tempo quis saber como customizar os arquivos gerados pelo scaffold, na verdade isso é mais simple do que parece. Quando o este comando é executado o Rails verifica se há algum modelo definido pelo usuário, caso não encontre o Rails utiliza o modelo padrão consta nas libs da própria framework.
Então o que temos que fazer é definir estes modelos customizados e colocá-los no local correto.

Então vamos começar acessando o repossitório do Rails no GitHub mais especificamente na pasta /railties/lib/rails/generators/erb/scaffold/templates acesse-a neste link:
https://github.com/rails/rails/tree/master/railties/lib/rails/generators/erb/scaffold/templates.

Neste diretório você encontrar o modelos utilizados para os arquivos:

_form.html.erb
edit.html.erb
index.html.erb
new.html.erb
show.html.erb

Copie os 5 arquivos para o diretório /libs/templates/erb/scaffold

Provavelmente você não vai encontrar esse diretório, então crie-o corforme o esquema acima.

Neste tutorial vamos editar o index.html.erb, mas você pode alterar qualquer um desses arquivos.

Abrindo o arquivo, vamos econtrar o seguinte conteudo.


<h1>Listing <%= plural_table_name %></h1>

<table>
 <tr>
 <% attributes.each do |attribute| -%>
 <th><%= attribute.human_name %></th>
 <% end -%>
 <th></th>
 <th></th>
 <th></th>
 </tr>

<%%= content_tag_for(:tr, @<%= plural_table_name %>) do |<%= singular_table_name %>| %>
 <% attributes.each do |attribute| -%>
 <td><%%= <%= singular_table_name %>.<%= attribute.name %> %></td>
 <% end -%>
 <td><%%= link_to 'Show', <%= singular_table_name %> %></td>
 <td><%%= link_to 'Edit', edit_<%= singular_table_name %>_path(<%= singular_table_name %>) %></td>
 <td><%%= link_to 'Destroy', <%= singular_table_name %>, <%= key_value :confirm, "'Are you sure?'" %>, <%= key_value :method, ":delete" %> %></td>
 <%% end %>
 </table>

<br />

<%%= link_to 'New <%= human_name %>', new_<%= singular_table_name %>_path %>

Vamos fazer uma alteração simples traduzindo o que as informações do index para o portugues:


<h1>Lista de <%= plural_table_name %></h1>

<table>
 <tr>
 <% attributes.each do |attribute| -%>
 <th><%= attribute.human_name %></th>
 <% end -%>
 <th></th>
 <th></th>
 <th></th>
 </tr>

<%%= content_tag_for(:tr, @<%= plural_table_name %>) do |<%= singular_table_name %>| %>
 <% attributes.each do |attribute| -%>
 <td><%%= <%= singular_table_name %>.<%= attribute.name %> %></td>
 <% end -%>
 <td><%%= link_to 'Exibir', <%= singular_table_name %> %></td>
 <td><%%= link_to 'Editar', edit_<%= singular_table_name %>_path(<%= singular_table_name %>) %></td>
 <td><%%= link_to 'Apagar', <%= singular_table_name %>, <%= key_value :confirm, "'Você está certo disso?'" %>, <%= key_value :method, ":delete" %> %></td>
 <%% end %>
 </table>

<br />

<%%= link_to 'Novo(a) <%= human_name %>', new_<%= singular_table_name %>_path %>

Salve e execute um scaffold como teste.

Você irá verificar que o index foi criado a partir do modelo que acabamos de definir. Portanto podemos alterar da maneira que quisermos esses arquivos para que eles fiquem mais adequados à nossa aplicação, isso com certeza vai aumentar a produtividade do nosso trabalho com o rails.

#Rails01 – Começando com Rails do zero (Vídeo aula)

Olá pessoal, hoje eu tomei coragem e fiz uma coisa que há muito tempo tinha vontade de fazer, uma vídeo aula!

Não sei se levo muito jeito para a coisa, mas espero que vocês gostem.

Nesse vídeo eu compartinho com vocês como iniciar com rails para quem está começando agora, como instalar e quais são as melhores fontes de informação para quem quer aprender Rails.

 

De acordo com a receptividade do público eu vou preparando outros vídeos.

Seguem links utilizados neste vídeo tutorial:

http://rubyonrails.org

http://railscasts.com

https://groups.google.com/forum/?hl=pt#!forum/rails-br

http://compare.buscape.com.br/proc_unico?id=3482&kw=rails

 

Até a próxima.

Como formatar data e hora na linguagem Ruby

Para para formatar uma data ou hora no Ruby podemos utilizar o método strftime().

 %a - A abreviatura do dia da semana ("Sun'')
 %A - O nome completo do dia da semana ("Sunday'')
 %b - A abreviatura do nome do mês  ("Jan'')
 %B - O nome completo do mês ("January'')
 %d - Dia do mês  (01..31)
 %H - Horas do dia  (00..23)
 %I - Horas do dia (01..12)
 %j - Dia do ano (001..366)
 %m - Mês em número (01..12)
 %M - Minutos das horas (00..59)
 %p - Indicador de meridiam (``AM'' or ``PM'')
 %S - Segundos do minuito (00..60)
 %U - Número da semana no ano corrente, iniciando do primeiro domingo da primeira semana do ano (00..53)
 %W - Número da semana no ano corrente, iniciando da primeira segunda da primeira semana do ano (00..53)
 %w - Dia da semana (Domingo é 0, 0..6)
 %x - Representação para a data somente, sem hora.
 %X - Representação para a hora somente, sem data.
 %y - Ano em dezena 00..99)
 %Y - Ano literal ex: 2011
 %Z - Nome do "Time zone"
 %% - Literal ``%'' catacter

Exemplo de uso.

t = Time.now
 t.strftime("Data %m/%d/%Y") #=> "Data 04/09/2011"
 t.strftime("at %I:%M%p") #=> "08:56AM"

Faça as combinações conforme a sua necessidade.

Até a próxima.

Instaralar Ruby 1.9.3, Rails 3.2, Mysql e Git no Ubuntu 12.04 (atualizado)

(atualizado 13/03/2012)

Vou postar aqui o passo a passo para montar um ambiente de produção do Ruby on Rails 3 no Ubuntu 10.10.

Este ambiente de produção será composto pelo Ruby, Rails 3.2, Mysql e o Git.

Vamos começar instalando o Git, digite no seu terminal o seguinte comando:

sudo apt-get install git

Instalando o Ruby utilizando o RVM, que é um controlador de versão da linguagem Ruby.

1) Vamos começar instalando o curl (caso vc já tenha ele instalado pule essa etapa)

sudo apt-get install curl

2) Instalar o RVM

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

Após a instalação será exibida uma mensagem de confirmação, você perceberá que o rvm será instalado no seguinte diretório .rmv.
Ainda precisamos editar o arquivo .bashrc

gedit .bashrc

Insira na última linha do documento o seguinte código:

if [[ -s $HOME/.rvm/scripts/rvm ]] ; then source $HOME/.rvm/scripts/rvm ; fi

Salve o documento e depois execute o seguinte código no seu prompt de comando.

source "$HOME/.rvm/scripts/rvm"

3) Instalando o Ruby

sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

Em seguida

rvm install 1.9.3

Vamos informar ao RVM que nós trabalharemos com a versão 1.9.2 como padrão.

rvm use 1.9.3 --default

Vamos ver se funcionou?

ruby -v

No meu a resposta foi a seguinte:

ruby 1.9.3p0 (2010-08-18 revision 29036) [x86_64-linux]

Agora finalmente vamos instalar o Rails

gem install rails

Instalando o Mysql

sudo apt-get install mysql-client mysql-server libmysqlclient-dev

e agora a gem do mysql para o rails.

gem install mysql2

Seu ambiente de produção está pronto, agora faça um teste criando uma aplicação.

rails new teste -d mysql