express - sequelize创建db记录后如何从响应中删除json元素?

标签 express sequelize.js

使用 sequelize,我可以使用 product modek 在我的数据库中创建一个 Product,但我想编辑 json 响应,删除 updatedAt 和 createdAt 元素。我该怎么做?

我的代码:

router.post('/products', (req, res, next) => {
    Product.create({
        name: req.body.name,
        price: req.body.price
    }).then(
        product => res.status(200)
            .json(product)
    )
});

使用此主体调用 localhost:3000/products 时:
{
    "name": "A Book",
    "price": 10.99,
}

我得到这个回应:
{
    "id": 8,
    "name": "A Book",
    "price": 10.99,
    "updatedAt": "2018-06-26T20:09:38.643Z",  <-- Remove?
    "createdAt": "2018-06-26T20:09:38.643Z"   <-- Remove?
}

最佳答案

尝试使用 lodash pick()。

如果你的回答是

{
    "id": 8,
    "name": "A Book",
    "price": 10.99,
    "updatedAt": "2018-06-26T20:09:38.643Z",
    "createdAt": "2018-06-26T20:09:38.643Z"
}

试试吧,var result = _.pick(response, ["name", "price"]);
router.post('/products', (req, res, next) => {
    Product.create({
        name: req.body.name,
        price: req.body.price
    }).then(
        product => 
            var result = _.pick(response, ["name", "price"]);
            res.status(200).json(result)
    )
});

关于express - sequelize创建db记录后如何从响应中删除json元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51050752/

相关文章:

sql - 通过使用sequelize 来对where 查询进行计数

javascript - 自定义 SequelizeJS 调用

javascript - MySql 序列化架构

node.js - 使用 Express、Request 和 Node.js 在 typescript 中发送/处理 GET 请求

node.js - 如何为 koajs 服务器做优雅的停止?

node.js - Sequelize - beforeCreate 未被调用

node.js - 如何使用 Sequelize 更新我的购物车数据库中的商品数量(如果它已经存在)或如果不存在则创建它?

javascript - 使用 ACE.js 的内容安全策略

javascript - 使用动态键推送到 mongodb 数组

express - 使用 swagger-ui-express 设置基本身份验证