Sequelize를 사용하여 동일한 테이블에 외래 키를 만드는 방법은 무엇입니까?

세바스티앙 데니스

Sequelize는 좋지만 때로는 어려울 수 있습니다. 해결할 수없는 간단한 예가 있습니다. Table : ANIMALS

ID     PARENT_ID     LABEL
-------------------------------
1                    ANIMAL
2      1             MAMMAL
3      1             OVOVIPARUS
4      2             PRIMATES
5      2             CARNIVORA

엔티티를 Sequelize :

const Animals = db.define('Animal',
    {
        id: {
            type: Sequelize.INTEGER,
            allowNull: false,
            primaryKey: true,
        },
        parentId: {
            type: Sequelize.INTEGER,
        },
        Label: {
            type: Sequelize.VARCHAR(20),
        },

그리고 다음과 같은 데이터를 가져오고 싶습니다.

[
  {id:1, superclass: null, label:'ANIMAL'},
  {id:2, superclass: {id:1, parent: null, label:'ANIMAL'}, label:'MAMMAL'},
  {id:3, superclass: {id:1, parent: null, label:'ANIMAL'}, label:'OVOVIPARUS'},
...
]

선택적으로 자식 추가

[
  {
    id:1, 
    superclass: null, 
    subclasses: [ {id:2, label:'MAMMAL'}, {id:3, label:'OVOVIPARUS'},],
    label:'ANIMAL'},
...
]

관계를 어떻게 정의해야합니까? 감사

수지 트 아그라 하리

자체 연결을 정의 할 수 있습니다.

Animal.hasMany(Animal, {as: 'children', foreignKey: 'parentId'});
Animal.belongsTo(Animal, {as: 'parent', foreignKey: 'parentId'});

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

한 테이블의 외래 키를 여러 번 사용하여 Laravel에서 데이터를 가져 오는 방법은 무엇입니까?

분류에서Dev

기본 외래 키를 사용하여 두 테이블을 연결하는 방법은 무엇입니까?

분류에서Dev

동일한 테이블을 참조하는 2 개의 외래 키를 사용하여 sequelize 모델을 만드는 방법

분류에서Dev

SQL Server의 내 테이블에서 외래 키를 사용하는 방법은 무엇입니까?

분류에서Dev

목록에서 동일한 외래 키를 가진 요소를 검색하는 방법은 무엇입니까?

분류에서Dev

테이블 사이에 외래 키를 배치하는 좋은 방법은 무엇입니까

분류에서Dev

NULL 외래 키를 업데이트하고 동일한 키를 참조하는 다른 테이블 내에 새 행을 만드는 방법은 무엇입니까?

분류에서Dev

외래 키를 사용한 대량 삽입에 Dapper를 사용하는 방법은 무엇입니까?

분류에서Dev

외래 키로 만 접합 테이블 레코드를 저장 한 후 관련 개체를로드하는 방법은 무엇입니까?

분류에서Dev

동일한 기본 키를 사용하여 행을 삭제 한 후 테이블에 데이터를 삽입하는 방법은 무엇입니까?

분류에서Dev

React에서 여러 외래 키를 사용하여 테이블에 삽입하는 방법은 무엇입니까?

분류에서Dev

이미 존재하는 필드를 다른 테이블에 대한 외래 키로 설정하는 방법은 무엇입니까?

분류에서Dev

데이터 손실없이 기존 열을 사용하여 테이블에 외래 키를 추가하는 방법은 무엇입니까?

분류에서Dev

MySQL은 동일한 테이블의 id 필드를 참조하는 nullable 외래 키를 만듭니다.

분류에서Dev

SQL Server에서 트리거를 사용하여 외래 키 참조 테이블을 업데이트하는 방법은 무엇입니까?

분류에서Dev

psql에서 외래 키 제약 조건을 사용하여 한 테이블의 구조를 다른 테이블에 복사하는 방법은 무엇입니까?

분류에서Dev

자식 테이블 ORACLE SQL에 두 개의 외래 키를 할당하는 방법은 무엇입니까?

분류에서Dev

MySQL 테이블에 외래 키를 추가하는 방법은 무엇입니까?

분류에서Dev

이 경우 외래 키를 사용하는 방법은 무엇입니까?

분류에서Dev

SQL의 특정 조건에서 외래 키를 사용하여 두 테이블을 연결하는 방법은 무엇입니까?

분류에서Dev

sqlite에서 외래 키를 사용하는 방법은 무엇입니까?

분류에서Dev

의도하지 않은 유사 중복이있는 postgres 사용자 테이블은 지저분한 외래 키가있는 다른 테이블로 이어졌습니다. 외래 키를 수정하고 통합하는 방법은 무엇입니까?

분류에서Dev

의도하지 않은 유사 중복이있는 postgres 사용자 테이블은 지저분한 외래 키가있는 다른 테이블로 이어졌습니다. 외래 키를 수정하고 통합하는 방법은 무엇입니까?

분류에서Dev

@XmlElements를 사용하여 동일한 목록에 다른 개체를 만드는 방법은 무엇입니까?

분류에서Dev

외부 라이브러리에서 WPF를 사용하여 동적으로 변경 가능한 스타일을 만드는 방법은 무엇입니까?

분류에서Dev

jOrgChart를 사용하여 HTML 파일에 그래프를 만드는 방법은 무엇입니까?

분류에서Dev

Sequelize를 사용하여 조인 테이블에 쿼리를 생성하는 방법은 무엇입니까?

분류에서Dev

부분 키가 포함 된 Microsoft SQL Server를 사용하여 약한 엔터티에 대한 테이블을 만드는 방법은 무엇입니까?

분류에서Dev

UPDATE 쿼리에서 동일한 테이블의 데이터를 사용하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    한 테이블의 외래 키를 여러 번 사용하여 Laravel에서 데이터를 가져 오는 방법은 무엇입니까?

  2. 2

    기본 외래 키를 사용하여 두 테이블을 연결하는 방법은 무엇입니까?

  3. 3

    동일한 테이블을 참조하는 2 개의 외래 키를 사용하여 sequelize 모델을 만드는 방법

  4. 4

    SQL Server의 내 테이블에서 외래 키를 사용하는 방법은 무엇입니까?

  5. 5

    목록에서 동일한 외래 키를 가진 요소를 검색하는 방법은 무엇입니까?

  6. 6

    테이블 사이에 외래 키를 배치하는 좋은 방법은 무엇입니까

  7. 7

    NULL 외래 키를 업데이트하고 동일한 키를 참조하는 다른 테이블 내에 새 행을 만드는 방법은 무엇입니까?

  8. 8

    외래 키를 사용한 대량 삽입에 Dapper를 사용하는 방법은 무엇입니까?

  9. 9

    외래 키로 만 접합 테이블 레코드를 저장 한 후 관련 개체를로드하는 방법은 무엇입니까?

  10. 10

    동일한 기본 키를 사용하여 행을 삭제 한 후 테이블에 데이터를 삽입하는 방법은 무엇입니까?

  11. 11

    React에서 여러 외래 키를 사용하여 테이블에 삽입하는 방법은 무엇입니까?

  12. 12

    이미 존재하는 필드를 다른 테이블에 대한 외래 키로 설정하는 방법은 무엇입니까?

  13. 13

    데이터 손실없이 기존 열을 사용하여 테이블에 외래 키를 추가하는 방법은 무엇입니까?

  14. 14

    MySQL은 동일한 테이블의 id 필드를 참조하는 nullable 외래 키를 만듭니다.

  15. 15

    SQL Server에서 트리거를 사용하여 외래 키 참조 테이블을 업데이트하는 방법은 무엇입니까?

  16. 16

    psql에서 외래 키 제약 조건을 사용하여 한 테이블의 구조를 다른 테이블에 복사하는 방법은 무엇입니까?

  17. 17

    자식 테이블 ORACLE SQL에 두 개의 외래 키를 할당하는 방법은 무엇입니까?

  18. 18

    MySQL 테이블에 외래 키를 추가하는 방법은 무엇입니까?

  19. 19

    이 경우 외래 키를 사용하는 방법은 무엇입니까?

  20. 20

    SQL의 특정 조건에서 외래 키를 사용하여 두 테이블을 연결하는 방법은 무엇입니까?

  21. 21

    sqlite에서 외래 키를 사용하는 방법은 무엇입니까?

  22. 22

    의도하지 않은 유사 중복이있는 postgres 사용자 테이블은 지저분한 외래 키가있는 다른 테이블로 이어졌습니다. 외래 키를 수정하고 통합하는 방법은 무엇입니까?

  23. 23

    의도하지 않은 유사 중복이있는 postgres 사용자 테이블은 지저분한 외래 키가있는 다른 테이블로 이어졌습니다. 외래 키를 수정하고 통합하는 방법은 무엇입니까?

  24. 24

    @XmlElements를 사용하여 동일한 목록에 다른 개체를 만드는 방법은 무엇입니까?

  25. 25

    외부 라이브러리에서 WPF를 사용하여 동적으로 변경 가능한 스타일을 만드는 방법은 무엇입니까?

  26. 26

    jOrgChart를 사용하여 HTML 파일에 그래프를 만드는 방법은 무엇입니까?

  27. 27

    Sequelize를 사용하여 조인 테이블에 쿼리를 생성하는 방법은 무엇입니까?

  28. 28

    부분 키가 포함 된 Microsoft SQL Server를 사용하여 약한 엔터티에 대한 테이블을 만드는 방법은 무엇입니까?

  29. 29

    UPDATE 쿼리에서 동일한 테이블의 데이터를 사용하는 방법은 무엇입니까?

뜨겁다태그

보관