Migração Rails permite que você use Ruby para definir mudanças em seu esquema de banco de dados, tornando possível a utilização de um sistema de controle de versão para manter as coisas sincronizadas com o código real.
Isto tem muitas utilizações, incluindo:
Equipes de desenvolvedores - se uma pessoa faz uma alteração de esquema, os outros desenvolvedores só precisam atualizar e executar "migrate rake".
Servidores de produção - run "ancinho migrar" quando você lançar uma nova versão para trazer o banco de dados atualizado também.
Várias máquinas - se desenvolver tanto em um desktop e um laptop, ou em mais de um local, as migrações podem ajudar a mantê-los todos sincronizados.
O que pode Migração Rails fazer?
Migrações suportar todos os tipos de dados básicos: cordas, texto, inteiro, float, data e hora, data e hora, hora, data binários, e boolean:
string - é para tipos de dados pequenos, como um título.
text - é para mais pedaços de dados textuais, tais como a descrição.
integer - é para números inteiros.
float - é para decimais.
datetime e timestamp - armazenar a data e hora em uma coluna.
date and time - loja ou apenas a data ou a hora apenas.
binary - é para armazenamento de dados, tais como imagens, áudio, ou filmes.
boolean - é para armazenar valores verdadeiro ou falso.
Opções de coluna válidos são:
NOTA: As atividades realizadas pela migração Rails pode ser feito usando qualquer front-end GUI ou direto no SQL pronto, mas Migração Rails faz todas essas atividades muito fácil.
ver o Rails API para obter detalhes sobre estes.
Criar as migrações:
Aqui está a sintaxe genérica para a criação de uma migração:
Isto irá criar o db/migrate/001_table_name.rb arquivo. Um arquivo de migração contém sintaxe do Ruby básica que descreve a estrutura de dados de uma tabela do banco de dados.
NOTA: Antes de executar o gerador de migração, a sua recomendado para limpar migrações existentes gerados por geradores modelo.
Vamos criar duas migrações correspondentes aos nossos três livros mesas e assuntos.
Observe que você está usando minúsculas para o livro e assunto e usando a forma plural, criando migrações. Este é um paradigma Rails que você deve seguir sempre que criar uma migração.
Editar o código para dizer o que fazer:
Vá em db / migrate subdiretório de sua aplicação e editar cada um arquivo a um, usando qualquer editor de texto simples.
Modificar 001_books.rb como se segue: A coluna ID será criado automaticamente, por isso não fazê-lo aqui também.
O self.up método é usado quando a migração para uma nova versão, self.down é usado para reverter as alterações, se necessário. Neste momento acima script será usado para criar a tabela livros.
Modificar 002_subjects.rb como se segue:
Script acima será usado para criar a tabela de assuntos e vai criar cinco registros na tabela de assuntos.
Executar a migração:
Agora você criou todos os arquivos de migração necessários, é hora de executá-los no banco de dados. Para fazer isso, vá para um prompt de comando e vá para o diretório da biblioteca, em que o aplicativo está localizado, e depois de rake tipo migrar comando da seguinte maneira:
sua vontade, criar uma tabela "schema_info" se não existe, que acompanha a versão atual do banco de dados - cada nova migração será uma versão nova, e quaisquer novas migrações será executado até que o seu banco de dados é a versão atual.
Rake é um Ruby programa de construção similar ao Unix fazer programa que o Rails aproveita de simplificar a execução de tarefas complexas como a atualização de uma estrutura de banco de dados etc
Correndo migrações para bancos de dados de produção e teste:
Se você gostaria de especificar o que trilhos ambiente para usar para a migração, use a variável shell RAILS_ENV.
Por exemplo:
NOTA: No Unix, use "exportação RAILS_ENV produção =" em vez de comando definido.
Isto tem muitas utilizações, incluindo:
Equipes de desenvolvedores - se uma pessoa faz uma alteração de esquema, os outros desenvolvedores só precisam atualizar e executar "migrate rake".
Servidores de produção - run "ancinho migrar" quando você lançar uma nova versão para trazer o banco de dados atualizado também.
Várias máquinas - se desenvolver tanto em um desktop e um laptop, ou em mais de um local, as migrações podem ajudar a mantê-los todos sincronizados.
O que pode Migração Rails fazer?
- create_table(name, options)
- drop_table(name)
- rename_table(old_name, new_name)
- add_column(table_name, column_name, type, options)
- rename_column(table_name, column_name, new_column_name)
- change_column(table_name, column_name, type, options)
- remove_column(table_name, column_name)
- add_index(table_name, column_name, index_type)
- remove_index(table_name, column_name)
Migrações suportar todos os tipos de dados básicos: cordas, texto, inteiro, float, data e hora, data e hora, hora, data binários, e boolean:
string - é para tipos de dados pequenos, como um título.
text - é para mais pedaços de dados textuais, tais como a descrição.
integer - é para números inteiros.
float - é para decimais.
datetime e timestamp - armazenar a data e hora em uma coluna.
date and time - loja ou apenas a data ou a hora apenas.
binary - é para armazenamento de dados, tais como imagens, áudio, ou filmes.
boolean - é para armazenar valores verdadeiro ou falso.
Opções de coluna válidos são:
- imit ( :limit => “50” )
- default (:default => “blah” )
- null (:null => false implies NOT NULL)
NOTA: As atividades realizadas pela migração Rails pode ser feito usando qualquer front-end GUI ou direto no SQL pronto, mas Migração Rails faz todas essas atividades muito fácil.
ver o Rails API para obter detalhes sobre estes.
Criar as migrações:
Aqui está a sintaxe genérica para a criação de uma migração:
Código:
C:\ruby\application> ruby script/generate migration table_name
Isto irá criar o db/migrate/001_table_name.rb arquivo. Um arquivo de migração contém sintaxe do Ruby básica que descreve a estrutura de dados de uma tabela do banco de dados.
NOTA: Antes de executar o gerador de migração, a sua recomendado para limpar migrações existentes gerados por geradores modelo.
Vamos criar duas migrações correspondentes aos nossos três livros mesas e assuntos.
Código:
C:\ruby> cd library
C:\ruby\library> ruby script/generate migration books
C:\ruby\library> ruby script/generate migration subjects
Observe que você está usando minúsculas para o livro e assunto e usando a forma plural, criando migrações. Este é um paradigma Rails que você deve seguir sempre que criar uma migração.
Editar o código para dizer o que fazer:
Vá em db / migrate subdiretório de sua aplicação e editar cada um arquivo a um, usando qualquer editor de texto simples.
Modificar 001_books.rb como se segue: A coluna ID será criado automaticamente, por isso não fazê-lo aqui também.
Código:
class Books < ActiveRecord::Migration
def self.up
create_table :books do |t|
t.column :title, :string, :limit => 32, :null => false
t.column :price, :float
t.column :subject_id, :integer
t.column :description, :text
t.column :created_at, :timestamp
end
end
def self.down
drop_table :books
end
end
O self.up método é usado quando a migração para uma nova versão, self.down é usado para reverter as alterações, se necessário. Neste momento acima script será usado para criar a tabela livros.
Modificar 002_subjects.rb como se segue:
Código:
class Subjects < ActiveRecord::Migration
def self.up
create_table :subjects do |t|
t.column :name, :string
end
Subject.create :name => "Physics"
Subject.create :name => "Mathematics"
Subject.create :name => "Chemistry"
Subject.create :name => "Psychology"
Subject.create :name => "Geography"
end
def self.down
drop_table :subjects
end
end
Script acima será usado para criar a tabela de assuntos e vai criar cinco registros na tabela de assuntos.
Executar a migração:
Agora você criou todos os arquivos de migração necessários, é hora de executá-los no banco de dados. Para fazer isso, vá para um prompt de comando e vá para o diretório da biblioteca, em que o aplicativo está localizado, e depois de rake tipo migrar comando da seguinte maneira:
Código:
C:\ruby\library> rake db:migrate
sua vontade, criar uma tabela "schema_info" se não existe, que acompanha a versão atual do banco de dados - cada nova migração será uma versão nova, e quaisquer novas migrações será executado até que o seu banco de dados é a versão atual.
Rake é um Ruby programa de construção similar ao Unix fazer programa que o Rails aproveita de simplificar a execução de tarefas complexas como a atualização de uma estrutura de banco de dados etc
Correndo migrações para bancos de dados de produção e teste:
Se você gostaria de especificar o que trilhos ambiente para usar para a migração, use a variável shell RAILS_ENV.
Por exemplo:
Código:
C:\ruby\library> set RAILS_ENV=production
C:\ruby\library> rake db:migrate
Código: C:\ruby\library> set RAILS_ENV=test |
Código:
C:\ruby\library> set RAILS_ENV=development
C:\ruby\library> rake db:migrate
NOTA: No Unix, use "exportação RAILS_ENV produção =" em vez de comando definido.
Spoiler :
Créditos:
Tutorial >> tutorialspoin <<
Tutorial >> tutorialspoin <<