везде написано что primary_key по дефолту добавляет индекс в таблицу.
Второй вопрос, почему если я пытаюсь добавить db_index=True или unique=True, тоже индекс не добавляется.
Но как убираю primary_key, то индекс создается нормально.
Но если я попробую на primary_key поле добавить индекс через:
class Meta:
indexes = [
models.Index(fields=['first_name',]),
]
То индекс добавляется нормально, не смотря на то что поле primary_key. P.S. Postgres база. Не могу найти объяснение этого кейса в интернете, везде пишется что должно работать.
primary key - просто автоматически id добавляет, как правило уникальный, и в базовой теории никакого отношения к индексу в целом не имеет. primary_key - это циферные значения. не буквенные. Поэтому не надо на primare_key ложить текстовый индекс(если это вообще возможно)) хотябы в другое место пробовать, он отдельно где-то должен быть
поле Integer у меня. А по поводу индексации primary key пишут что создает https://stackoverflow.com/questions/42898988/is-primary-key-automatically-indexed-in-postgresql/50592983 по дефолту. И много где пишут.
Обсуждают сегодня