2014-11-07 7 views
4

2 개의 mssql 테이블 사이의 관계를 지정하고 싶습니다. 지불 범주 및 대금 지급. paymentcategory.id는 payout.category 열에 조인합니다. 내가 외래 키로 지정 payout.json 모델 비 ID 필드의 루프백 관계

: 아이디,

"relations": { 
    "paymentcategories": { 
     "type": "hasOne", 
     "model": "Paymentcategory", 
     "foreignKey": "id" 
} 

하지만 루프백이 범주에 가입을 지정하는 방법이 있나요 기본 키

로 ID 필드에 기본적으로 보이는 들. common/models/payout.json 파일에 있습니까?

"relations": { 
    "paymentcategories": { 
     "type": "hasOne", 
     "model": "Paymentcategory", 
     "foreignKey": "id", 
     "primaryKey": "category" ?????????????????? 
} 

지금 나는이 오류를 얻을 :. 당신은 /common/models/your-model-name.json에 (원하는대로 할 수 있도록 외부 키를 정의 할 수

"error": { 
"name": "Error", 
"status": 400, 
"message": "Key mismatch: Paymentpayout.id: undefined, Paymentcategory.id: 1", 
"statusCode": 400, 

답변

0

결제 카테고리 모델은

이어야합니다.

하나의 판매 대금 카테고리에는 해당 카테고리의 N 판매 대금이있을 수 있습니다 (분류 기준).

당신의 지불금 모델은

{ 
    "name":"Payout", 
    "options":{...}, 
    "properties":{ 
    "id":{...}, 
    "category":{...}, 
    ... 
    }, 
    "relations":{ 
    "paymentcategories":{ 
     "type":"belongsTo", 
     "model":"Paymentcategory", 
     "foreignKey":"category" 
    } 
    } 
} 

중요하기는해야한다 : 모두 관계 객체가 같은 외래 키를 가지고 있고, 그것은 Payout.category입니다.