반응형
장고 자기 참조 외래 키
나는 일반적으로 webapps 및 데이터베이스에 익숙하지 않으므로 이것이 멍청한 질문 일 수 있습니다. 모델의 다른 인스턴스 (부모)의 기본 ID를 가리키는 필드로 모델 ( "CategoryModel")을 만들고 싶습니다.
class CategoryModel(models.Model):
parentId = models.ForeignKey(CategoryModel)
어떻게해야합니까? 감사!
모델 이름을 ForeignKey에 문자열로 전달하면 올바른 작업을 수행합니다.
그래서:
parentId = models.ForeignKey("CategoryModel")
또는 "self"라는 문자열을 사용할 수 있습니다
parentId = models.ForeignKey("self")
'self'문자열을 사용하여 자체 참조를 표시 할 수 있습니다.
class CategoryModel(models.Model):
parentId = models.ForeignKey('self')
https://docs.djangoproject.com/en/dev/ref/models/fields/#foreignkey
https://books.agiliq.com/projects/django-orm-cookbook/en/latest/self_fk.html
class Employee(models.Model):
manager = models.ForeignKey('self', on_delete=models.CASCADE)
또는
class Employee(models.Model):
manager = models.ForeignKey("app.Employee", on_delete=models.CASCADE)
https://stackabuse.com/recursive-model-relationships-in-django/
참고 URL : https://stackoverflow.com/questions/15285626/django-self-referential-foreign-key
반응형
'IT박스' 카테고리의 다른 글
ACID와 호환되는 NoSQL 데이터 저장소가 있습니까? (0) | 2020.06.18 |
---|---|
소프트 키보드가 나타날 때 레이아웃을 조정하는 방법 (0) | 2020.06.18 |
여러 조건이있는 Bash if 문에서 오류가 발생 함 (0) | 2020.06.18 |
JavaScript로 로컬 디스크 파일을 여는 방법은 무엇입니까? (0) | 2020.06.18 |
Sqlite LIMIT / OFFSET 쿼리 (0) | 2020.06.18 |