Postgres Update Query 在 Node,js 中不起作用



我有一个更新查询似乎不起作用。使用的基础数据库是 postgres。你能检查一下为什么它不起作用吗?我已经包含了我的 api 和架构。提前致谢

exports.patch_meetup = async (req, res) => {
    const findOneQuery = 'SELECT * FROM meetups WHERE id=$1';
    const updateOneQuery = `UPDATE meetups
      SET topic=$1, location=$2, body=$3, happeningOn=$4, Tags=$5, meetupImage=$6, createdOn=$7
      WHERE id=$8 returning *`;
    try {
        const {
            rows
        } = await db.query(findOneQuery, [req.params.id]);
        if (!rows[0]) {
            return res.status(404).json({
                'message': 'meetup not found'
            });
        }
        const values = [
            req.body.topic,
            req.body.location,
            req.body.body,
            req.body.happeningOn,
            req.body.Tags,
            req.file.path,
            moment(new Date()),
            req.params.id
        ];
        const response = await db.query(updateOneQuery, values);
        return res.status(200).json(response.rows[0]);
    } catch (err) {
        return res.status(400).send(err);
    }
};`

这是我的模型

const meetupTable = CREATE TABLE IF NOT EXISTS
        meetups(
            id UUID PRIMARY KEY,
            topic VARCHAR(128) NOT NULL,
            location VARCHAR(128) NOT NULL,
            body TEXT NOT NULL,
            happeningOn TIMESTAMPTZ NOT NULL,
            Tags TEXT[] NOT NULL,
            meetupImage bytea,
            createdOn TIMESTAMPTZ DEFAULT Now()
        )

我不确定问题可能是什么,但一个可能是你忘记将 multer 中间件添加到 API 端点,另一个就像我在评论中提到的,你不应该传递时刻对象,而是应该按原样传递日期对象。

最新更新