首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Waterline替换数据库中的元素,并与查找文本进行比较?

如何使用Waterline替换数据库中的元素,并与查找文本进行比较?
EN

Stack Overflow用户
提问于 2015-02-05 20:55:51
回答 1查看 61关注 0票数 0

我使用Sails和Waterline,我会将url中的用户名与数据库元素进行比较,以查找用户。

http://localhost:1337/johndoe (或id)在数据库中查找无名氏。

我的控制器,目前:

代码语言:javascript
运行
复制
user: function (req, res) {

    var user = req.param('user');
    var elt = (/^[0-9]*$/.test(user))?{id: user}:{name: user};

    User.findOne(elt).exec(function (err, user) {
        if (err) res.json({ error: 'DB error' }, 500);
        if (user) {
            res.json(user);
        } else {
        res.json({ error: 'User not found' }, 404);
        }
    });
}

一个主意,好吗?

EN

回答 1

Stack Overflow用户

发布于 2015-02-06 00:08:25

将elt放在where函数中,如下所示:

代码语言:javascript
运行
复制
user: function (req, res) {

    var user = req.param('user');
    var elt = (/^[0-9]*$/.test(user))?{id: user}:{name: user};

    User.findOne().where(elt).exec(function (err, user) {
        if (err) res.json({ error: 'DB error' }, 500);
        if (user) {
            res.json(user);
        } else {
        res.json({ error: 'User not found' }, 404);
        }
    });
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28344556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档