2. Criar um projeto em Ruby on Rails

Nessa aula, será apresentado a criação do projeto Computação na Prática. Para continuar esses passos, o rails tem que estar intalado na sua máquina.

1. Criar um projeto em Rails

Verificar se há alguma versão do rails instalado na máquina. Abrir um terminal do seu computador:

C:\Projetos>rails -v

Acessar o diretório um diretório qualquer no terminal e executar o seguinte comando: Por exemplo:

C:\Projetos>rails new computacaonapratica

Abrir o diretório criado "computacaonapratica" e visualizar todos os arquivos criados.

2. Acessar o diretório do projeto criado

No terminal entrar no diretório criado e instale o bundle no projeto: Por exemplo:

C:\Projetos>cd computacaonapratica

Abrir o arquivo Gemfile em um editor de texto, alterar a gem sqlite3 para:

gem 'sqlite3', '< 1.4'

No terminal entrar no diretório criado e instale o bundle no projeto:

C:\Projetos\computacaonapratica>bundle install 

Descrição de cada pasta criada no projeto:

Pasta

Propósito

app/

Contém os controllers, models, views, helpers, mailers e assets.

bin/

Contém o rails script que inicia sua aplicação e pode conter outros scripts configuráveis: update, deploy ou executar sua aplicação.

config/

Configura sua aplicação relacionado as rotas, banco de dados, etc.

config.ru

Usado para iniciar a aplicação.

db/

Contém o esquema da sua base de dados e também as migrations.

GemfileGemfile.lock

Este arquivo permite especificar quais "gems" são dependentes na sua aplicação Rails. Estes arquivos são usados no momento de executar o Bundler gem.

lib/

Módulos de extensão da aplicação, novas bibliotecas prontas para serem incluídadas na aplicação.

log/

Arquivos de log da aplicação.

public/

Diretório onde o seu conteúdo estará disponível na aplicação, como arquivos de imagem.

app/assets

Diretório onde se encontram todos os conteúdos de configuração para o layout da página: javascripts, css, imagens.

app/controllers

Diretório onde se encontram os controladores da aplicação. Para cada página que houver uma ação dinâmica entre o usuário e a aplicação. É necessário criar um arquivo "users_controller.rb" com os respecitivos métodos que irão executar a ação e redirecionar o usuário para uma outra página ou apenas exibir uma mensagem de sucesso/alerta.

app/models

Diretório onde se encontram os modelos da aplicação. Para cada tabela criada no banco de dados é criado automaticamente uma classe Model. Por exemplo: "user.rb", neste arquivo irá conter todos as referências de relacionamento com outras tabelas (um-para-um, um-para-muitos), validaação das colunas, se podem ser nulas ou se possuem um valor inicial.

app/views

Diretório onde se encontram as páginas da aplicação. Nestas páginas será possível o usuário interagir com a aplicação, através de formulários. É necessário escrever código html juntamente com métodos rails e javascripts. Por exemplo: O arquivo user.html.erb

vendor/

Neste diretório ficam aplicações criadas por terceiros, são aplicações prontas que podem ser incluídas na sua aplicação, usando apenas algum método de referência ou algum javascript.

3. Adicionando dependências

Acessar a pasta config do projeto rails.

C:\Projetos\computacaonapratica>cd config

Ver o conteúdo da pasta, se não houver o arquivo boot.rb, criar um novo e adicionar o conteúdo abaixo:

C:\Projetos\computacaonapratica\config>touch boot.rb
C:\Projetos\computacaonapratica\config>nano boot.rb
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)

require 'bundler/setup' # Set up gems listed in the Gemfile.
require 'bootsnap/setup' # Speed up boot time by caching expensive operations.

Ctrl+X para sair, Y para salvar, Enter. Voltar para a pasta a raíz do projeto.

C:\Projetos\computacaonapratica\config>cd ..

Adicionar o yarn para execução dos comandos abaixo e testar se foi instalado: https://classic.yarnpkg.com/en/docs/install

C:\Projetos\computacaonapratica>yarn -v

Executar o comando abaixo:

C:\Projetos\computacaonapratica>rails webpacker:install

Verifique se todos os arquivos foram atualizados.

C:\Projetos\computacaonapratica>yarn install --check-files

4. Adicionando banco de dados da aplicação

Criar o arquivo para acessar o banco de dados da aplicação. Este projeto está usando Sqlite3, mas você pode configurar outros bancos.

C:\Projetos\computacaonapratica>cd config

Ver o conteúdo da pasta, se não houver o arquivo database.yml, criar um novo e adicionar o conteúdo abaixo:

C:\Projetos\computacaonapratica\config>touch database.yml

Veja outros exemplor de arquivos database.yml para diferentes tipos de banco de dados:

C:\Projetos\computacaonapratica\config>nano database.yml
# SQLite version 3.x
#   gem install sqlite3
development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

Ctrl+x para sair, em seguida Y para salvar e Enter para retornar para a raíz do projeto.

C:\Projetos\computacaonapratica\config>cd ..

5. Iniciando servidor web

No terminal entrar no diretório do projeto criado e inicie o servidor com o seguinte comando:

C:\Projetos\computacaonapratica>rails server

Acessar a página no seu navegador: http://localhost:3000

Visualizar a página do Rails!

Para construir a página inicial da aplicação, no prompt abaixo fazer Ctrl + c para parar o servidor, então confirme a operação.

=> Booting Puma
=> Rails 6.1.4.4 application starting in development 
=> Run `bin/rails server --help` for more startup options
Puma starting in single mode...
* Puma version: 5.6.1 (ruby 2.6.8-p205) ("Birdie's Version")
*  Min threads: 5
*  Max threads: 5
*  Environment: development
*          PID: 33024
* Listening on http://127.0.0.1:3000
* Listening on http://[::1]:3000
Use Ctrl+C to stop

Last updated