Это общий вопрос о поиске по неиндексированному полю в Django 2.2
Если у меня есть модель с
class Policy(models.Model):
policy_no = models.PositiveIntegerField()
eff_date = models.DateTime(auto_now=False, auto_now_add=False)
name_id = models.ForeignKey(InsuredName, on_delete=models.CASCADE)
Теперь, когда застрахованный заходит на мой сайт и выполняет поискдля его номера политики.
У меня нет этого в качестве первичного ключа, потому что вы можете иметь много одобрений политики (изменение в покрытии) в течение срока действия политики.Политик может быть миллионы.
Стоит ли использовать следующую настройку модели вместо добавления номера политики в качестве индексированного поля?
class Policy(models.Model):
policy_no = models.PositiveIntegerField(db_index=True)
eff_date = models.DateTime(auto_now=False, auto_now_add=False)
name_id = models.ForeignKey(InsuredName, on_delete=models.CASCADE)
Также рекомендуется ли это, если вы собираетесьупорядочить или отфильтровать по: он должен быть проиндексирован.
Мне нужно знать, какой подход лучше?Неиндексированное поле по сравнению с индексированным
policy_no = models.PositiveIntegerField()
против
policy_no = models.PositiveIntegerField(db_index=True)
Пожалуйста, дайте мне знать, если это правильный способ сделать поле индексированным.