Você está aqui: Ruby On Rails ::: Dicas & Truques ::: Active Record |
Criando seu primeiro ActiveRecord: cadastrando um livro em uma tabela MySQLQuantidade de visualizações: 8396 vezes |
|
Nesta dica mostro como criar seu primeiro ActiveRecord na mão. Nada de ferramentas automatizadas desta vez. Aqui assumo que você já tem uma aplicação Ruby On Rails criada e com o nome de estudos, o banco de dados MySQL já configurado, uma base de dados chamada estudos e devidamente configurada no database.yml. Vamos criar um cadastro de livros, contendo apenas o título do livro, o autor, a editora e o número de páginas. Lembre-se de que o Rails adicionará por conta própria um campo id do tipo integer e auto-incremento. Teremos ainda a adição dos campos created_at e updated_at (para guardar a data e hora de criação e atualização dos registros). Começamos então criando a classe Livro, que herdará de ActiveRecord. Para criá-la, dispare o comando: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- C:\ruby_on_rails\estudos>ruby script/generate model Livro exists app/models/ exists test/unit/ exists test/fixtures/ create app/models/livro.rb create test/unit/livro_test.rb create test/fixtures/livros.yml create db/migrate create db/migrate/20091220024005_create_livros.rb A classe resultante deste comando será guardada em C:\ruby_on_rails\estudos\app\models e terá o seguinte conteúdo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- class Livro < ActiveRecord::Base end Vamos agora criar a tabela correspondente a este model na base de dados. Vá em C:\ruby_on_rails\estudos\db\migrate e abra o arquivo 20091220024005_create_livros.rb (ou parecido). Altere o conteúdo deste arquivo para: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
class CreateLivros < ActiveRecord::Migration
def self.up
create_table :livros do |t|
t.string :titulo
t.string :autor
t.string :editora
t.integer :paginas
t.timestamps
end
end
def self.down
drop_table :livros
end
end
Salve o arquivo e dispare o comando: C:\ruby_on_rails\estudos>rake db:migrate Se tudo correr bem você deverá ver o seguinte resultado: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- (in C:/ruby_on_rails/estudos) == 20091220024005 CreateLivros: migrating ========= -- create_table(:livros) -> 0.2040s == 20091220024005 CreateLivros: migrated (0.2040s) ==== Veja se a tabela foi criada corretamente no banco de dados. Se ela estiver lá já podemos avançar. Em caso negativo, reveja os passos anteriores. Se precisar disparar o comando rake db:migrate novamente, basta incrementar o valor inteiro no nome do arquivo 20091220024005_create_livros.rb. Pronto! Com o model Livro e a tabela livros já criados, chegou a hora de inserirmos um registro no banco de dados. Crie um novo controlador chamado Cadastro: C:\ruby_on_rails\estudos>ruby script/generate controller Cadastro Vá em C:\ruby_on_rails\estudos\app\controllers e altere o conteúdo do arquivo cadastro_controller.rb para: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
class CadastroController < ApplicationController
def cadastrar
# vamos carregar o model Livro
livro = Livro.new
# vamos preencher os campos
livro.titulo = "Programando em Java 2"
livro.autor = "Osmar J. Silva"
livro.editora = "Editora Érica"
livro.paginas = 340
# vamos inserir os dados na tabela livros
livro.save
render :text => "<h1>Veja o resultado na tabela!</h1>"
end
end
Inicie o servidor web e acesse http://127.0.0.1:3000/cadastro/cadastrar. Agora vá na tabela do banco de dados e se certifique de que o livro foi cadastrado com sucesso. |
|
|
Veja mais Dicas e truques de Ruby On Rails |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






