Модель UserTagAnswer:
answer: {
relation: Model.ManyToManyRelation,
modelClass: sails.config.models.UserTagAnswerOptions,
join: {
from: 'usertaganswer.id',
through: {
from: 'usertaganswer_answeredoptions.userTagAnswerId',
to: 'usertaganswer_answeredoptions.userTagAnswerOptionId'
},
to: 'usertagansweroptions.id'
}
},
Модель UserTagAnswerOptions
userTagAnswers: {
relation: Model.ManyToManyRelation,
modelClass: sails.config.models.UserTagAnswer,
join: {
from: 'usertagansweroptions.id',
through: {
from: 'usertaganswer_answeredoptions.userTagAnswerOptionId',
to: 'usertaganswer_answeredoptions.userTagAnswerId'
},
to: 'usertaganswer.id'
}
},
Я вижу в базе данных, что в таблице соединений есть строка usertaganswer_answeredoptions со всей ожидаемой информацией. Но теперь я хочу удалить эту строку. Я пытаюсь с этим:
theAnswer = await UserTagAnswer.query()
.where(inputs.userType + "Id", inputs.answeringUserId)
.where('tagId', answerObject.tag)
.eager('tag');
theAnswer[0].$relatedQuery('answer')
.unrelate();
Я пытаюсь стереть ВСЕ отношения в поле «ответ», но в базе данных, похоже, нет никаких изменений.





Я забыл ключевое слово await в звонке unrelate(). Конечный рабочий код:
await theAnswer[0].$relatedQuery('answer')
.unrelate();