Ich möchte, dass die IDs meines Bestellmodells bei 1000 beginnen und von dort autoinkremental hochzählen.Rails-Migration für ID-Spalte bei 1.000 beginnen und von dort automatisch inkrementieren?
Kann dies über die Migration erfolgen?
Ich möchte, dass die IDs meines Bestellmodells bei 1000 beginnen und von dort autoinkremental hochzählen.Rails-Migration für ID-Spalte bei 1.000 beginnen und von dort automatisch inkrementieren?
Kann dies über die Migration erfolgen?
In der Migration dieser Migration versuchen, nach Tabelle erstellt wurde, aktualisieren Sie die Sequenz mit etwas wie folgt aus:
create_table :products do |t|
t.string :name
# other stuff
end
# for Postgres
execute "SELECT setval('products_id_seq', 1000)"
# and for mysql ...
execute "ALTER TABLE products AUTO_INCREMENT = 1000"
Wie wird die Produkttabellennummer <1000 auf diese Weise zugewiesen? –
Dies wurde nicht getestet und ich bin mir nicht sicher, welche db Sie verwenden.
create_table(:order, :id => false) do |t|
t.integer :id, :options => 'PRIMARY KEY', :default => 1000
oder wenn Sie bereits die Tabelle
def change
execute "ALTER TABLE orders AUTO_INCREMENT = 1000"
end
komplette Vermutung Aber hast du versucht create_table: whatever_table,: id => 1000 do | t | –
Welche Datenbank benutzen Sie? z.B. mysql, postgresql usw.? –
Derzeit wird Sqlite3 in Kürze auf Postgres migriert. –