Django, 동일한 모델에 두 개의 외래 키 추가

공간 파는 사람

컨텍스트 테이블의 한 행을 컨텍스트 테이블의 다른 행과 연결하는 테이블이 있습니다. Django에서 두 개의 외래 키를 추가하려고하는데 관련 이름을 사용해야한다고 말합니다. 관련 이름에 대한 문서를 읽었지만 이해할 수 없습니다. 주석 처리 된 행과 함께 아래 작업 모델을 포함합니다. 다음에는 템플릿도 포함됩니다. 누구나 아래 코드를 수정할 수 있습니까?

model.py

class Relationship (models.Model):
    relationship_id = models.AutoField(primary_key=True)
    # context_id1 = models.IntegerField()
    context_id1 = models.ForeignKey(Context, db_column='context_id1', on_delete = models.PROTECT)
    context_id2 = models.IntegerField()
    # context_id2 = models.ForeignKey(Context, db_column='context_id2', on_delete = models.PROTECT)
    relationship = models.CharField(max_length = 50, blank=True, null=True)

주형

  {% for relationship in context.relationship_set.all %}
      Current Context:{{relationship.context_id1.number}} <br> # works
      Relationship:{{relationship.relationship}} <br> # works
      Related Context: {{relationship.context_id2.number}} # fails
  {% endfor %}
빌렘 반 온셈

related_name=…[장고 문서는] "역에서"당신의 관계의 이름입니다. 그래서 Contexta에서 Relationship. 여기에서 동일한 모델을 두 번 대상으로하기 때문에 둘 다라는 이름을 지정할 수 없습니다 relationship_set. 따라서 이러한 다른 related_names를 줄 수 있습니다 . 예를 들면 :

class Relationship(models.Model):
    id = models.AutoField(primary_key=True, db_name='relationship_id')
    context1 = models.ForeignKey(
        Context,
        db_column='context_id1',
        on_delete = models.PROTECT,
        related_name='relations_through1'
    )
    context1 = models.ForeignKey(
        Context,
        db_column='context_id1',
        on_delete = models.PROTECT,
        related_name='relations_through2'
    )
    relationship = models.CharField(max_length = 50, blank=True, null=True)

참고 : 일반적으로 Django는 접미사 _idForeignKey있는 "twin"필드를 자동으로 추가하므로 필드에 접미사 추가하지 않습니다 _id. 따라서 context1대신 이어야합니다 context_id1.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

두 개의 동일한 외래 키가있는 Django Inlineformset

분류에서Dev

동일한 테이블 / 모델을 가리키는 두 개의 외래 키

분류에서Dev

동일한 외래 키 개체의 두 필드에 대한 Django 필터

분류에서Dev

Django : 모델의 사용자에 대한 두 개의 외래 키, 페이지를로드 한 사용자가 아닌 키 가져 오기

분류에서Dev

Django-외래 키가 두 개 이상인 모델

분류에서Dev

동일한 관계에 대해 두 개의 외래 키가있는 모델에 대한 연결을 작성하는 방법은 무엇입니까?

분류에서Dev

Django는 두 개의 외래 키로 두 개의 모델을 저장합니다.

분류에서Dev

두 개의 동일한 외래 키에 조인

분류에서Dev

MySQL : 동일한 테이블에 두 개의 외래 키 사용

분류에서Dev

인라인이있는 Django 관리자, 2 개의 다른 모델에 대한 2 개의 외래 키가있는 1 개의 모델

분류에서Dev

저장 후 신호에 두 개의 외래 키가있는 모델에 삽입

분류에서Dev

동일한 테이블 및 동일한 외래 키에있는 두 개의 열

분류에서Dev

한 열에 두 개의 외래 키

분류에서Dev

Django는 두 모델의 외래 키인 객체를 가져옵니다.

분류에서Dev

MySQL은 동일한 테이블에 외래 키를 두 개 이상 추가하지 않습니다.

분류에서Dev

동일한 테이블과 외래 키에있는 두 개의 기본 키

분류에서Dev

Django : 가장 최근의 외래 키 값 두 개에 주석 달기

분류에서Dev

동일한 외래 키의 두 열에 대한 INNER JOIN

분류에서Dev

Django 모델 : 동일한 테이블에서 2 개의 외래 키를 사용할 때 동일한 레코드를 참조하지 않는 방법

분류에서Dev

MYSQL : 동일한 테이블에서 두 개의 외래 키로 선택

분류에서Dev

DJANGO 모델에 조건부 외래 키 필드 추가

분류에서Dev

두 개의 QuerySet-세 번째 모델의 공통 외래 키에 대한 병합 / 결합

분류에서Dev

두 개의 외래 키를 포함하는 테이블에 대한 관계 모델링

분류에서Dev

두 개의 외래 키가 동시에 NULL이되는 것을 방지

분류에서Dev

JPA Hibernate 두 개의 외래 키를 동일한 테이블로

분류에서Dev

Visual Paradigm은 단일 기본 키에 대한 단일 테이블 참조에 두 개의 외래 키를 추가합니까?

분류에서Dev

두 개의 가능한 테이블의 외래 키

분류에서Dev

Django는 두 번째 모델의 외래 키로 Model1의 한 열만 사용합니다.

분류에서Dev

카티 전 곱을 유발하는 동일한 테이블에 대한 두 개의 외래 키가있는 테이블에 대한 sql

Related 관련 기사

  1. 1

    두 개의 동일한 외래 키가있는 Django Inlineformset

  2. 2

    동일한 테이블 / 모델을 가리키는 두 개의 외래 키

  3. 3

    동일한 외래 키 개체의 두 필드에 대한 Django 필터

  4. 4

    Django : 모델의 사용자에 대한 두 개의 외래 키, 페이지를로드 한 사용자가 아닌 키 가져 오기

  5. 5

    Django-외래 키가 두 개 이상인 모델

  6. 6

    동일한 관계에 대해 두 개의 외래 키가있는 모델에 대한 연결을 작성하는 방법은 무엇입니까?

  7. 7

    Django는 두 개의 외래 키로 두 개의 모델을 저장합니다.

  8. 8

    두 개의 동일한 외래 키에 조인

  9. 9

    MySQL : 동일한 테이블에 두 개의 외래 키 사용

  10. 10

    인라인이있는 Django 관리자, 2 개의 다른 모델에 대한 2 개의 외래 키가있는 1 개의 모델

  11. 11

    저장 후 신호에 두 개의 외래 키가있는 모델에 삽입

  12. 12

    동일한 테이블 및 동일한 외래 키에있는 두 개의 열

  13. 13

    한 열에 두 개의 외래 키

  14. 14

    Django는 두 모델의 외래 키인 객체를 가져옵니다.

  15. 15

    MySQL은 동일한 테이블에 외래 키를 두 개 이상 추가하지 않습니다.

  16. 16

    동일한 테이블과 외래 키에있는 두 개의 기본 키

  17. 17

    Django : 가장 최근의 외래 키 값 두 개에 주석 달기

  18. 18

    동일한 외래 키의 두 열에 대한 INNER JOIN

  19. 19

    Django 모델 : 동일한 테이블에서 2 개의 외래 키를 사용할 때 동일한 레코드를 참조하지 않는 방법

  20. 20

    MYSQL : 동일한 테이블에서 두 개의 외래 키로 선택

  21. 21

    DJANGO 모델에 조건부 외래 키 필드 추가

  22. 22

    두 개의 QuerySet-세 번째 모델의 공통 외래 키에 대한 병합 / 결합

  23. 23

    두 개의 외래 키를 포함하는 테이블에 대한 관계 모델링

  24. 24

    두 개의 외래 키가 동시에 NULL이되는 것을 방지

  25. 25

    JPA Hibernate 두 개의 외래 키를 동일한 테이블로

  26. 26

    Visual Paradigm은 단일 기본 키에 대한 단일 테이블 참조에 두 개의 외래 키를 추가합니까?

  27. 27

    두 개의 가능한 테이블의 외래 키

  28. 28

    Django는 두 번째 모델의 외래 키로 Model1의 한 열만 사용합니다.

  29. 29

    카티 전 곱을 유발하는 동일한 테이블에 대한 두 개의 외래 키가있는 테이블에 대한 sql

뜨겁다태그

보관