2017-02-20 21 views
1

У меня есть сквозная связь для двух объектов, Assignment и Tags. Они соединяются через модель AssignmentTag. Я могу читать & писать между этими объектами в порядке, но когда я пытаюсь обновить, он не отбрасывает существующие ассоциации до see notes for .update().Обновление ватерлинии через ассоциацию

Я считаю, что мне нужно передать массив идентификаторов тегов в модель присвоения, а также удалить текущие ассоциации и обновить новые ассоциации.

Assignment.update({id: req.param("assignmentId")}, {tags: tags}) 
       .exec(function (err, updated) { 
        if (err) { 
         return res.serverError(err); 
        } 

        return res.json({ 
         updated 
        } 
       }); 

Assignment.js модель:

module.exports = { 
     connection: db_connection, 
     tableName: 'assignments', 
     attributes: { 
      id: { 
       type: 'integer', 
       primaryKey: true, 
       autoIncrement: true, 
       unique: true 
      }, 
      title: { 
       type: 'string' 
      }, // varchar(255) 
      description: { 
       type: 'text' 
      }, // text 
      // an assignment may have many tags 
      tags: { 
       collection: 'tag', 
       via: 'assignment', 
       through: 'assignmenttag' 
      }, 
     } 
    }; 

Tag.js модель:

module.exports = { 
     connection: db_connection, 
     tableName: 'tags', 
     attributes: { 
      id: { 
       type: 'integer', 
       primaryKey: true, 
       autoIncrement: true, 
       unique: true 
      }, 
      title: { 
       type: 'string' 
      }, // varchar(255) 
      description: { 
       type: 'text' 
      }, // text 
      // A tag may have many assignments 
      assignments: { 
       collection: 'assignment', 
       via: 'tag', 
       through: 'assignmenttag' 
      }, 
     } 
    }; 

AssignmentTag.js модель:

module.exports = { 
     connection: db_conection, 
     tableName: 'assignment_tag', 
     attributes: { 
      id: { 
       type: 'integer', 
       primaryKey: true, 
       autoIncrement: true, 
       unique: true 
      }, 
      assignment: { 
       columnName: 'assignment_id', 
       model: 'assignment' 
      }, 
      tag: { 
       columnName: 'tag_id', 
       model: 'tag' 
      }, 
     } 
    }; 

Любая идея, почему тег, как ассоциации не снижаются на .update()?

ОБНОВЛЕНИЕ: Я создал проблему в проекте Waterline, чтобы получить дополнительную помощь. Я выделил проблему в репозитории, связанном с проблемой Waterline. https://github.com/balderdashy/waterline/issues/1453


ПОСТАНОВИЛИ: ватерлинии реагировала примерно через неделю и обновленные модели ассоциации для размещения этого запроса. См. Вопрос: https://github.com/balderdashy/waterline/issues/1453. По-видимому, они переписывают эти ассоциации в предстоящем выпуске, поэтому этот вопрос должен быть устаревшим.

ответ

0

Это решение было разрешено путем опубликования на ретрансляции Waterline следующего сообщения: https://github.com/balderdashy/waterline/issues/1453.

+0

Здравствуйте, пожалуйста, добавьте некоторые детали к вашему ответу, чтобы было понятно и понятнее. – Chaithanya

+0

Посмотрите прилагаемый вопрос с Waterline. В этом диалоге все объяснено. – Chase

+0

Спасибо за информацию. Хотя предоставление ссылок на внешние ресурсы полезно, лучше предоставить решение в самом ответе и использовать гиперссылки для справки. Посмотрите http://stackoverflow.com/help/how-to-answer советы о том, как писать хорошие ответы. – Chaithanya