gpt4 book ai didi

node.js - Sequelize findAll 方法不返回数据库中的条目

转载 作者:行者123 更新时间:2023-12-03 22:32:27 25 4
gpt4 key购买 nike

我已将我的应用程序连接到现有数据库。数据库表当前有 3 个条目,但是,当我使用 findAll 查询模型时,只返回一个空数组。我不确定这是否与数据库已经存在并通过模型连接到它有关。我也在同步模型目录中索引文件中的所有文件。

//Courses Model for sequelize

const Sequelize = require('sequelize');

module.exports = (sequelize) => {
class Courses extends Sequelize.Model{}

Courses.init({
id: {
type: Sequelize.INTEGER,
primaryKey: true,
autoIncrement: true
},

title: {
type: Sequelize.STRING,
allowNull: false
},

description: {
type: Sequelize.TEXT,
allowNull: false
},

estimatedTime: {
type: Sequelize.STRING,
},

materialsNeeded: {
type: Sequelize.STRING,
},

createdAt: {
type: Sequelize.DATE,
allowNull: false
},

updatedAt: {
type: Sequelize.DATE,
allowNull: false
},

userId: {
type: Sequelize.INTEGER,
references: { model: 'users', key: 'id' },
onDelete: 'CASCADE',
allowNull: false
}
}, {sequelize, modelName: 'courses'});

Courses.associate = (models) => {
models.courses.belongsTo(models.users, {foreignKey: "userId"});
};

return Courses
}



// Router with findAll query

const router = require('express').Router();
const db = require('../models/');



router.get('/', async(req, res) => {
try {
console.log(await db.courses.findAll());
} catch(err) {
console.error(err);
}

res.json({msg: "None"})
});

module.exports = router;

[这是目前的类(class)表][1]
[1]:/image/2KkK6.png

最佳答案

我猜这是 javascript 级别的问题。你不能像那样使用 await 语句。请先试试这个。

onst router = require('express').Router();
const db = require('../models/');

router.get('/', async (req, res) => {
try {
const courese = await db.courses.findAll()

console.log(courses)
res.send({ courses })
} catch(err) {
console.error(err);
}

res.json({msg: "None"})
});

module.exports = router;
如果运行后问题仍然存在,请检查您的配置是否指向正确的数据库。
用于检查这是否是问题。
  • 更改您的配置以指向现有数据库
  • 运行代码
  • 更改您的配置以指向具有不同架构的本地数据库
  • 执行 Sequelize 同步
  • 运行代码

  • 通过这样做,您可以检查代码中的真正问题是什么。

    关于node.js - Sequelize findAll 方法不返回数据库中的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65589446/

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