2016-06-02 3 views
2

Я новичок в loopback, и у меня есть некоторые проблемы с отношениями.Как создать ссылку в loopback?

У меня есть эти две модели:

курс

{ 
    "name": "course", 
    "plural": "courses", 
    "base": "PersistedModel", 
    "idInjection": false, 
    "options": { 
     "validateUpsert": true 
    }, 
    "properties": { 
     "name": { 
      "type": "string", 
      "required": true 
     } 
    }, 
    "validations": [], 
    "relations": { 
     "toughtBy":{ 
      "type": "embedsMany", 
      "model": "teacher", 
      "foreignKey":"", 
      "options": { 
      "validate": true, 
      "forceId": false 
     } 
    }, 
    "acls": [], 
    "methods": {} 
} 

учитель

{ 
    "name": "teacher", 
    "plural": "teachers", 
    "base": "PersistedModel", 
    "idInjection": false, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "name": { 
     "type": "string", 
     "required": true 
    }, 
    "lastName": { 
     "type": "string", 
     "required": true 
    } 
    }, 
    "validations": [], 
    "relations": {}, 
    "acls": [], 
    "methods": [] 
} 

Как я могу добавить существующий учитель в существующем курсе?

Я пробовал использовать API put /courses/{id}/toughtBy/{fk}, но я получаю пустое тело.

ответ

1

Чтобы подтвердить, но я считаю, что вы не создали курс сначала до вызова POST api/courses/1/thoughtBy/1, поэтому вы пытаетесь обновить экземпляр связанной модели из экземпляра модели, который не существует.

Кстати, а не с помощью courseembedsManyteacher, я бы рекомендовал использовать следующую скороговорку:

  • coursehasAndBelongsToManyteacher

затем использовать

POST api/courses/ создать курс POST api/teachers для создания учителя POST api/courses/link/ с учителем = 1 и courseid = 1 для соединения обоих

Смежные вопросы