Мне известно о Почему SQLAlchemy не создает последовательные столбцы? , где Майк создает столбец SERIAL id с primary_key = True
Но моя (Postgres) таблица имеет реальное значение естественный первичный ключ, и я не чувствую, что ключом является фальсификация идентификатора. Я могу сделать автоинкремент столбца id с помощью -
class MyTable(db.Model):
__tablename__ = 'my_table'
id = Column(BigInteger, server_default=Sequence('id').next_value(), index=True)
real_pk = Column(String(42), primary_key=True)
, который генерирует id BIGINT DEFAULT nextval('id') NOT NULL
, но я все еще предпочитаю более нативный id bigserial NOT NULL
Вопрос: Как создать (большой ) последовательный столбец с SQLAlchemy, когда он не является первичным ключом ?