col2 может иметь значение NULL.
Я знаю, что Postgres рассматривает значения NULL как отдельные.
Поэтому в SQL я бы сделал:
Код: Выделить всё
CREATE UNIQUE INDEX index_name ON TA (col1, col2) NULLS NOT DISTINCT
Что-то вроде:
Код: Выделить всё
class TherapeuticArea(Base):
__tablename__ = "TA"
__table_args__ = (
sa.Index(
"index_name",
"col1",
"col2",
unique=True,
# postgresql_ option here? Which one? Or..?
),
)
Но затем Alembic продолжает удалять индекс при последующих миграциях.
Поэтому я хотел бы иметь его как простое объявление в модели
Подробнее здесь: https://stackoverflow.com/questions/798 ... t-distinct
Мобильная версия