У меня может быть модель Django, которая имеет ссылку внешнего ключа на себя?

Вам нужно использовать группу захвата, чтобы отказаться от смешивания OR (|)

(\ba\b|\bthe\b|\bone\b) (\breason\b|reasons\b) (\bfor\b|\bof\b)

. И затем, как более элегантный способ, вы можете поместить границы слов вокруг групп. Также обратите внимание что, когда вы используете пространство в своем регулярном выражении вокруг слов, нет необходимости использовать границу слова. И для reasons и reason вы можете сделать последний s опционным с ?. И обратите внимание, что если вы не хотите, чтобы ваши слова соответствовали отдельным группам, вы можете сделать группы группами, не имеющими захвата, :?.

\b(?:a|the|one) reasons? (?:for|of)\b

Или использовать группу захвата, если вы хотите, чтобы слова в группе:

\b(a|the|one) (reasons?) (for|of)\b
44
задан MikeN 11 February 2009 в 09:12
поделиться

2 ответа

Необходимо использовать

models.ForeignKey('self')

, как упомянуто здесь .

75
ответ дан ohnoes 23 September 2019 в 11:29
поделиться

Да, просто сделайте это:

class Example(models.Model):
  parent_example = models.ForeignKey('self')
15
ответ дан Joe Holloway 23 September 2019 в 11:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: