Автоинкремент Rails с пользовательской последовательностью postgres - PullRequest
0 голосов
/ 07 октября 2019

Я создал пользовательскую последовательность со следующей миграцией:

class AddRaffleserialToEntries < ActiveRecord::Migration[5.2]
  def up
    add_column :entries, :raffleserial, :serial
  end

  def down
    remove_column :entries, :raffleserial, :serial
  end
end

И это успешно создало последовательность в базе данных:

 Esquema |                     Nome                      |   Tipo    |   Dono   
---------+-----------------------------------------------+-----------+---------
 public  | entries_id_seq                                | sequência | postgres
 public  | entries_raffleserial_seq                      | sequência | postgres

И соответствующая таблица тоже выглядит правильно:

    Coluna    |            Tipo             | Collation | Nullable |                    Default                    
--------------+-----------------------------+-----------+----------+-----------------------------------------------
 id           | integer                     |           | not null | nextval('entries_id_seq'::regclass)

 raffleserial | integer                     |           | not null | nextval('entries_raffleserial_seq'::regclass)

Тем не менее, когда я создаю новую 'Entry', лотерея не заполняется. Вот соответствующая часть schema.rb:

  create_table "entries", id: :serial, force: :cascade do |t|
    t.integer "entrant_id", null: false
    t.serial "raffleserial", null: false
  end

Чего еще не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...