Ruby On Rails
Criando uma aplicação simples com o Ruby On Rails
Primeiro passo: Instalação Existem versões disponíveis para as principais plataformas, assim como as devidas instruções de instalação disponíveis no site oficial do Ruby On Rails.
Segundo Passo: Criar e Rodar a aplicação 1. Executar o seguinte comando para criar a aplicação: $ rails application
Este comando criará a base para a nossa aplicação Rails
2. Vá para o diretório criado pelo comando anterior: $ cd application
3. Inicie a execução do seu servidor Rails: $ ruby script/server
4. No browser, vá para o endereço http://localhost:3000. Você deverá ver que o Rails está rodando.
Terceiro passo: Criar o Banco de Dados & Scaffold 1. Abra o diretório da aplicação 2. Abra o arquivo config/database.yml. Por meio deste arquivo é possível configurar diferentes
banco de dados para a sua aplicação. Em nosso caso, não é necessário mudar nada no arquivo. 3. Abra outro prompt de comando (de forma que o servidor se mantém rodando) e navegue até o diretório da sua aplicação e execute: $ rake db:create
Este comando criará o seu banco de dados de desenvolvimento
4. Agora queremos criar a nossa primeira tabela e interface. No Rails isso significa que criaremos um "scaffold" para iniciar dele. Um scaffold é simplesmente um ponto de partida, e então podese adicionar códigos cada vez mais complexos. Primeiramente, executando o comando scaffold sem nenhum parâmetro: $ ruby script/generate scaffold
Podese perceber que a saída gerada ensina como usar o comando.
5. Agora vamos usar o scaffold para iniciar a criação da nossa aplicação web. Criaremos uma tabela de usuários: $ ruby script/generate scaffold usuario nome:string sobrenome:string RA:string ativo:boolean
Então agora o scaffold está criado, o qual é apenas um conjunto de arquivos de template
6. Vamos então executar a migração do que criamos ( para criar a tabela do banco de dados) $ rake db:migrate
7. Agora, voltamos para o browser e vamos para http://localhost:3000/usuarios 8. Crie alguns usuários, e brinque com a interface do Rails!
Quarto Passo: Adicionar Funcionalidades 1. Suponhamos que esquecemos de colocar um campo de informações do usuário. Poderíamos criar um novo migration para adicionar a coluna, ou então retroceder o migration que foi criado por nós. Vamos fazer este último. Para remover a tabela e então poder adicionar uma nova coluna, devemos executar o seguinte comando: $ rake db:rollback
Isso retrocederá uma migração
2. Agora, abra a migração, localizada na pasta /db/migrations ou /db/migration. Deve haver apenas um arquivo. 3. note que a migração tem um método "up" e um método "down" 4. Nós queremos adicionar o campo de informação, então após a linha "t.boolean :active", adicione: t.text :info
5. Salve o arquivo e execute "rake db:migrate" novamente para migrar o seu banco de dados $ rake db:migrate
6. Se verificarmos o browser agora, veremos que o campo não foi adicionado automaticamente nas informações do usuário ou formulários. É preciso adicionar nós mesmos. 7. Abrindo o arquivo /app/views/usuarios/new.html.erb. É este que cria o formulário novo usuário. Nós precisamos adicionar o campo "info" após o checkbox "active", usando o código abaixo:
<%= f.label :info %>
<%= f.text_area :info %>
8. Podemos agora abrir a página "New User" no navegador (http://localhost:3000/usuarios/new). Agora será possível ver o campo "info" habilitado para receber novos usuários com um campo de informação.
9. Quando você cria um usuário, automaticamente você vai para a página que mostra as informações dele. Vamos agora adicionar o campo de informação do usuário a esta página. Podemos fazer isso abrindo a o arquivo /app/views/users/show.html.erb, e adicionar abaixo do campo "Active" o seguinte código:
Info:
<%=h @usuario.info %>
10. Salve o arquivo e verifique no seu navegador.
Quinto Passo: Nossa Primeira Validação: 1. No Rails, colocamos as nossas validações em nossos arquivos de modelo, então vamos abrir /app/models/usuario.rb 2. Nós queremos requerer que o usuário entre o seu primeiro nome E com o seu último nome, então vamos adicionar esta validação para o nosso modelo Usuário. Para isso, precisamos do seguinte código: class User < ActiveRecord::Base
validates_presence_of :nome, :sobrenome validates_numericality_of :RA, :on => :create end
3. Salve o arquivo, vá para o browser e tente criar um usuário sem o primeiro ou último nome. 4. Rails tem muitas classes de validação de ajuda, e é possível vêlas no seguinte endereço: http://apidock.com/rails/ActiveRecord/Validations/ClassMethods