Le migrations in automatico per ogni tabella creano una primary key di
solito chiamata con lo stesso nome della tabella col suffisso _id, il
tipo
data di tale campo e’ integer.
E se volessi usare un altro campo o due campi assieme come primary key?
mmh… le primary key di solito si chiamano soltanto ‘id’ , se vuoi però
puoi operare per modificare questa cosa:
Nella migrazione:
create_table :blablabla, :primary_key=>:nomecolonna do
blabla
end
Nel model:
class BlaBla < ActiveRecord::Base
set_primary_key :nomecolonna
end
dovrebbe bastare,
per quanto invece riguarda primary keys doppie non credo che
activerecord le
tenga…
Sandro
2008/12/22 Mauro [email protected]
2008/12/22 Sandro P. [email protected]
class BlaBla < ActiveRecord::Base
set_primary_key :nomecolonna
enddovrebbe bastare,
per quanto invece riguarda primary keys doppie non credo che activerecord
le
tenga…
mmm io devo gestire 3 tabelle: un’anagrafica fornitori, una categorie
merceologiche e una settori.
I fornitori possono far parte di una o piu’ categorie merceologiche e
ogni
categoria appartiene ad un settore.
Allora: la tabella settori ha come primary key sector_id, la tabella
categorie ha una foreign key sector_id per matenere l’integrita’ dei
dati.
Poi…per me la tabella categorie dovrebbe avere come primary key i
campi
settore e codice categoria, in quanto devono essere univoci, cioe’ ci
possono essere categorie con stesso codice ma appartenenti a settori
diversi.