Fuentes Vinícius Baggio - Ruby on Rails: coloque sua aplicação web nos trilhos стр 23.

Шрифт
Фон

Variável de ambiente RAILS_ENV

A variável de ambiente RAILS_ENV é usada para determinar em que am-

biente o Rails irá executar, por padrão sendo development. Assim, é pos-

sível executar comandos específicos para cada ambiente, basta fazer, por

exemplo:

RAILS_ENV=production rake db:create

85

4.3. Os primeiros comandos

Casa

do Código

4.3

Os primeiros comandos

Com seu terminal aberto na pasta do projeto (colchonet), execute o comando rails

server:

Comandos no terminal

A partir de agora, vou mostrar para você diversos comandos de terminal

e suas respostas. Por isso, nessas listagens você deve digitar apenas o que

segue o símbolo $ (dinheiro), ou se por um acaso a linha for muito longa,

será quebrada com o símbolo \(contra-barra). Exemplos:

$ rails server

=> Booting WEBrick

Nesse caso, você deverá digitar apenas rails server e apertar a tecla

Enter. O que não tiver esse prefixo será uma saída aproximada do que

você vai ver ao digitar o comando.

$ rails server

=> Booting WEBrick

=> Rails 3.2.8 application starting in development on http://0.0.0.0:3000

=> Call with -d to detach

=> Ctrl-C to shutdown server

[2012-06-08 23:38:43] INFO WEBrick 1.3.1

[2012-06-08 23:38:43] INFO ruby 1.9.3 (2012-04-20) [x86_64-darwin11.3.0]

[2012-06-08 23:38:43] INFO WEBrick::HTTPServer#start: pid=77137

port=3000

Abra o seu browser em http://localhost:3000/ e voilà, você verá uma bela página

preparada pela equipe do Ruby on Rails. Nessa página, há alguns passos, como usar

o comando rails generate para criar modelos e controles e remover o arquivo

public/index.html. Vamos seguir essa sugestão.

86

Casa do Código

Capítulo 4. Primeiros passos com Rails

Figura 4.3: Seja bem vindo ao Ruby on Rails

O comando rails generate é um comando bastante útil. Se você digitá-lo sem

parâmetros, pode ver uma lista do que pode ser gerado. Essa lista pode aumentar,

dependendo das gems que você instalar no Ruby on Rails. Vamos ver isso no futuro.

O Rails inclui várias ferramentas para você e esse script de geração de templates

é um ótimo exemplo de como a ferramenta te ajuda a automatizar tarefas repetitivas.

Nesse espírito, vamos agora começar a criar nosso primeiro recurso no sistema, o re-

curso quarto, ou Room, que terá um título, uma descrição e uma localização. Faremos

isso através do comando rails generate scaffold, que irá gerar vários arquivos

para nós:

$ rails generate scaffold room title location description:text

invoke active_record

create

db/migrate/20120609065934_create_rooms.rb

create

app/models/room.rb

invoke

test_unit

create

test/unit/room_test.rb

87

Casa do Código

Capítulo 4. Primeiros passos com Rails

Aqui podemos ver como o comando foi composto. Fazemos o generate de um

scaffold, ou andaime. Scaffolds são interessantes pois já geram desde o modelo até

a apresentação e páginas HTML, para que possamos modificar para ter o resultado

que quisermos.

Em seguida, especificamos o nome do recurso e seus atributos. Por padrão, todos

os campos serão string, ou um campo de texto curto a não ser que seja especificado,

como é o caso de description, a descrição de um quarto pode ser bem longa. Para

isso, podemos usar o : para especificar o tipo daquela informação.

O comando scaffold já gera tudo que é necessário para que possamos fazer as

operações mais comuns em um recurso, o famoso CRUD. CRUD nada mais é do

que create, retrieve, update e delete, ou criar, buscar/listar, editar e remover. Para tal,

primeiro precisamos criar o banco de dados. Não se preocupe em configurar um

servidor MySQL ou PostgreSQL por enquanto, pois vamos usar um banco de dados

bom e simples para o nosso propósito no momento, o SQLite. Para criar o banco de

dados e deixar tudo pronto para ver o resultado do scaffold, basta executar, na pasta

do projeto, os comandos rake db:create e rake db:migrate:

$ rake db:create

$ rake db:migrate

== CreateRooms: migrating =================================

-- create_table(:rooms)

-> 0.0019s

== CreateRooms: migrated (0.0020s) ========================

O primeiro irá criar o banco de dados, se não existir. No caso do SQLite,

o comando irá criar os arquivos db/development.sqlite3, db/test.sqlite3 e

db/production.sqlite3.

Em seguida, o rake db:migrate irá criar a tabela rooms no banco de dados

usando a migração gerada pelo gerador. Veremos no futuro o que é uma migração,

não se preocupe se você não souber o que é isso.

89

Casa do Código

Capítulo 4. Primeiros passos com Rails

Logs

Toda a requisição que você fizer, você vai ver que o servidor do Rails

mostrar um monte de coisas, desde consultas SQL executadas até quando

o servidor serve arquivos estáticos. Todo este texto será enviado também

para a pasta log, no arquivo com o nome do ambiente em execução (por

exemplo, log/development.log):

Started GET "/rooms" for 127.0.0.1 at 2012-08-14 21:58:15 -0700

Processing by RoomsController#index as HTML

Room Load (0.2ms) SELECT "rooms".* FROM "rooms"

Rendered rooms/index.html.erb within layouts/application (2.1ms)

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке