Node.js sails 0.9.8不工作,创建控制器并将其提升
我的帆0.9.8有问题。我已经在mac上安装了sails和lift,它工作得很好,但当启动生成控制器和模型,然后再次启动lift命令时,它会显示一些错误,如:Node.js sails 0.9.8不工作,创建控制器并将其提升,node.js,sails.js,waterline,Node.js,Sails.js,Waterline,我的帆0.9.8有问题。我已经在mac上安装了sails和lift,它工作得很好,但当启动生成控制器和模型,然后再次启动lift命令时,它会显示一些错误,如: $sails lift /usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/index.js:68 var schemaAttributes = this.waterline.schema[this.identity].attri
$sails lift
/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/index.js:68
var schemaAttributes = this.waterline.schema[this.identity].attributes;
^
TypeError: Cannot read property 'user' of undefined
at _.extend._initialize (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/index.js:68:49)
at module.exports (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/index.js:45:8)
at module.exports (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/collection/index.js:57:8)
at new child (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/utils/extend.js:17:39)
at instantiateCollection (/usr/local/lib/node_modules/sails/lib/hooks/orm/index.js:174:25)
at /usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:108:13
at Array.forEach (native)
at _each (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:32:24)
at Object.async.each (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:107:9)
at Hook.startORM (/usr/local/lib/node_modules/sails/lib/hooks/orm/index.js:164:10)
at Array.bound [as 1] (/usr/local/lib/node_modules/sails/node_modules/lodash/dist/lodash.js:729:21)
at listener (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:462:46)
at /usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:416:17
at Array.forEach (native)
at _each (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:32:24)
at Object.taskComplete (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:415:13)
at processImmediate [as _immediateCallback] (timers.js:330:15)
您可能只是缺少一些模块。例如,如果基本依赖项是使用类似于
sudo npm install sails-g
的东西全局安装的,则新生成的sails应用程序将不会出现任何问题,但一旦您开始添加某些功能,它可能需要其他模块(可能是与您的情况相关的DB适配器)
长话短说,只需在项目文件夹中运行
npm install
,它将创建一个节点\u modules
子文件夹,并在其中安装项目的依赖项。根据您从Waterline收到的错误,您的全局Sails依赖项似乎有问题。这不是适用于Sails 0.9.8的水线的正确版本。如果您一直在尝试其他版本的Sails,可能会发生这种情况;npm缓存有点混乱。要更正它,请执行以下操作:
sudo npm卸载sails-g
npm缓存清除
sudo npm安装sails-g
这将重新安装具有所有正确依赖项的sail。你不应该改变你的项目。我今天看到了这个问题。在全球范围内重新安装Sails对我不起作用,因为我安装了两个Sails副本。删除本地安装的副本迫使节点使用全局安装的Sails副本及其所有依赖项,这些都解决了所有问题。你是对的,但我认为这是因为我的模型已通过waterline验证。那么我如何解决这个问题呢?你是否尝试从项目文件夹中运行
npm install
?上面说什么?