首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么在Sails控制台中我的模型上没有定义.query?

为什么在Sails控制台中我的模型上没有定义.query?
EN

Stack Overflow用户
提问于 2015-09-16 14:14:53
回答 4查看 1.3K关注 0票数 1

在风帆控制台,我应该能够:

代码语言:javascript
运行
复制
User.query("SELECT * FROM USER")

但是我得到了undefined is not a function,意思是.query是未定义的。

我已经重新安装/更新了帆和水线,以及全球范围内的帆,我仍然会遇到同样的错误。

谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-09-16 16:49:52

解决了。Sails文件表明:

代码语言:javascript
运行
复制
{
  ...
   adapter: 'sails-postgresql',
  ...
}

但postgresql仍然在使用旧的:

代码语言:javascript
运行
复制
{
  ...
   module: 'sails-postgresql',
  ...
}

一旦我改变了,我开始看到查询通过服务器,query函数在我创建的模型下被定义。

票数 2
EN

Stack Overflow用户

发布于 2015-09-16 14:17:04

您是如何配置模型用户的?它使用的是哪个适配器?

只有在使用SQL适配器时才允许使用.query方法。

票数 1
EN

Stack Overflow用户

发布于 2015-09-16 16:56:25

首先,你应该验证你的观点。

代码语言:javascript
运行
复制
#model
    module.exports.connections = {
      localMysql: {
        adapter: 'sails-mysql',
        user: 'root',
        host: 'localhost',
        database: 'someDbase'
      },

例如,如果你跑

代码语言:javascript
运行
复制
#EXAMPLE
    User.find().exec(function (error, res){
    console.log(res)
    });  

这将返回所有用户,稍后如果不运行.exec(),则不会执行查询。

在这里,您需要回调:

代码语言:javascript
运行
复制
#CONTROLLER
    User.query("SELECT * FROM USER", function(err, results) {
      if (err) 
         return res.serverError(err);
      return res.ok(results);
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32611156

复制
相关文章

相似问题

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