I have three tables.
Table name : question, question_option,answer
answer table cotains question_option_id, question_option table contains question_id;
Now I have answer_id by which I want question data. but I am getting error like
"Error: A model class Answer doesn't have relation question",
My mappings are for QuestionOption
static get relationMappings() {
return {
question: {
relation: Model.HasOneRelation,
modelClass: Question,
join: {
from: 'question_option.question_id',
to: 'question.id',
}
}
};
}
for answer
static get relationMappings() {
return {
question_option: {
relation: Model.HasOneRelation,
modelClass: QuestionOption,
join: {
from: 'answer.question_option_id',
to: 'question_option.id',
}
}
};
}
what I need here in sql
SELECT a.name, qo.name, q.name FROM public.answer a inner join question_option qo on qo.id = a.question_option_id
inner join question q on q.id = qo.question_id
WHERE .....
knex query
await Answer.query().select('answer.name as answer', 'question_option.name as questionOption').joinRelated(QuestionOption).joinRelated(Question).joinRelated("[question]").where({ "answer.user_id": id});
thanks