gpt4 book ai didi

node.js - Nodejs Sequelize 有很多问题

转载 作者:行者123 更新时间:2023-12-03 22:33:28 29 4
gpt4 key购买 nike

我已经为这个 Sequelize 打破了我的头脑以获取产品问题并包括它的答案

const ProductQuestions = sequelize.define('product_questions', {
user: {
type: Sequelize.BIGINT
},
product: {
type: Sequelize.BIGINT
},
question: {
type: Sequelize.TEXT
}
});

ProductQuestions.associate = function(models) {
ProductQuestion.hasMany(models.product_answers,{
foreignKey: 'question',
as: 'questionId'
});
}

const ProductAnswer = sequelize.define('product_answers', {
question: {
type: Sequelize.BIGINT,
field: 'questionId'
},
answer: {
type: Sequelize.TEXT
},
user: {
type: Sequelize.BIGINT,
field: 'userId'
}
});

ProductQuestiosn.findAll({include: ['product_answers']});
出于某种原因,当我这样做时,查询运行时列是错误的
SELECT 
"product_questions".*,
"product_answers"."id" AS "product_answers.id",
"product_answers"."questionId" AS "product_answers.questionId",
"product_answers"."answer" AS "product_answers.answer",
"product_answers"."userId" AS "product_answers.user",
"product_answers"."productQuestionId" AS "product_answers.productQuestionId"
FROM (
SELECT
"product_questions"."id",
"product_questions"."productId" AS "product",
"product_questions"."question",
"product_questions"."userId" AS "user",
FROM
"product_questions" AS "product_questions")
AS "product_questions"
LEFT OUTER JOIN "product_answers" AS "product_answers"
ON "product_questions"."id" = "product_answers"."productQuestionId"
不知道为什么
ON "product_questions"."id" = "product_answers"."productQuestionId" 
什么时候应该
ON "product_questions"."id" = "product_answers"."questionId"
感谢您的帮助

最佳答案

所以我想通了!
所以看来我必须正确命名我的列
对于 postgres 数据库中的 product_answers 表,我有列 questionId 但它应该命名为 productQuestionId。我想这是为了命名约定,我不能只是按照我想要的方式命名外键。

关于node.js - Nodejs Sequelize 有很多问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64474712/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com