Le migrations

Seguendo il tutorial su wiki.rubyonrails.org, prima di creare un
modello,
viene fatta creare una migration: script/generate migration add_table.
Nel file generato vengono inseriti i comandi per la creazione della
tabella,
in particolare

create_table :people do |t|
t.string :name

ecc. ecc.
Dato il comando rake db:migrate la tabella viene creata.
Successivamente,sempre seguendo il tutorial, viene creato un modello:
script/generate model Person.
Ho notato che la creazione del modello genera automaticamente anche
una migration e nel file relativo mi trovo
create_table :people do |t|

come in add_table.
C’e’ qualcosa di sbagliato nella procedura?

Ciao mauro, non hai sbagliato.
Di fatto quando generi un modello con script/generate viene generata
anche
il file di migrazione per aggiungere quella tabella.
nel tuo caso il file
sarà:db/migrate/<numero_o_data_migrazione>_create_peoples.rb

ti convine quindi creare il modello e poi modificare la migrazione
generata.

‘script/generate migration’ ti serve nel caso tu volessi modificare o
eliminare tabello o colonne
attraverso una migrazione.

Ciao

2008/9/5 Mauro [email protected]:

Successivamente,sempre seguendo il tutorial, viene creato un modello:
http://lists.ruby-it.org/mailman/listinfo/ml


Piero B.
My Blog: cookedapple.net
LinkedIn: http://www.linkedin.com/in/pbozzolo
Linux User #403396

Please consider the environment before you print this email

Perfetto grazie mille…quel tutorial non e’ molto
preciso
:frowning:

scusa un’altra cosa: come mai nella migration generata automaticamente
all’interno di
create_table :people do |t|
mi mette di default un
t.timestamps

t.timestamps genera in automatico i campi created_at e updated_at
che vengono modificati in automatico quando crei e modifichi un record

esistono molti campi con nomi speciali che ti permettono di
semplificarti la vita in molti casi
guarda la doc di activerecord, ne troverai un po’

Ciao!

2008/9/5 Mauro [email protected]:

scusa un’altra cosa: come mai nella migration generata automaticamente
all’interno di
create_table :people do |t|
mi mette di default un
t.timestamps


Ml mailing list
[email protected]
http://lists.ruby-it.org/mailman/listinfo/ml


Piero B.
My Blog: cookedapple.net
LinkedIn: http://www.linkedin.com/in/pbozzolo
Linux User #403396

Please consider the environment before you print this email