1
- 왜 재귀 관계를 만들겠습니까?
- 위와 동일합니까?
aField = models.ForeignKey('self')
class aClass(models.Model): aField = models.ForeignKey('aClass')
aField = models.ForeignKey('self')
class aClass(models.Model): aField = models.ForeignKey('aClass')
당신은 동일한 모델 구조를 가진 부모와 자식 노드를 가지고 싶습니다 재귀 관계를 만들어야 할 수도 있습니다 . 예를 들어, 당신은 텍스트, 데이터, USER_ID와 의견이있는 경우 : 나는 (당신이 그것을 테스트하기 위해 시도 할 수 있습니다) 네 생각
class Comment(models.Model):
text = models.TextField()
create_date_time = models.DateTimeField()
parent_comment = models.ForeignKey('self')
를하지만 좋은 모양이 아니다. 클래스 이름을 변경하면 괄호 안에 문자열 값을 변경해야합니다. '자기'를 사용하면 두통이 없습니다.
첫 번째 질문을 이해하지 못합니다. "내가 왜 만들 겠어 ...". 우리는 이유를 모른다. – sergzach
1. 모델 개체가 일종의 관계를 형성해야하는 경우 즉, 트리에서 루트 옆의 모든 개체에 부모가 있어야합니다. – Bula