Как избежать неявной последовательности в поле id во время миграции рельсов - PullRequest
3 голосов
/ 27 марта 2012

Я пытаюсь создать таблицу в рельсах. Мне нужно иметь возможность установить идентификаторы для данных, которые поступают, потому что у меня есть три (или более) источника, и их идентификаторы должны совпадать.
Я устанавливаю идентификаторы вручную, основываясь на данных, которые я получаю.

Когда я создаю таблицу с миграцией, я получаю сообщение «создаст неявную последовательность», я не хочу этогобывает ... Как мне избежать этого?

Я знаю, почему это всегда есть .. но иногда нам нужна настройка нет?:)

1 Ответ

4 голосов
/ 27 марта 2012

ActiveRecord по умолчанию делает столбец: primary_key auto_increment. Может быть, вам придется создать первичный ключ самостоятельно, если вы не хотите его auto_increment.

create_table :table_name, :id => false do |t|
  t.integer :id
  t.timestamps
end
ActiveRecord::Base.connection.execute("ALTER TABLE table_name ADD PRIMARY KEY (id)")
...