忽略了尝试绑定路线错误在 Sail.js

Ignored attemp to bind route Error in Sail.js

本文关键字:错误 Sail js 绑定路      更新时间:2023-09-26

我刚刚开始学习Sails.js并观看了很多截屏视频。顺便说一句,当我尝试添加自定义路由(如"/:screenname")时,出现此错误:

"忽略了将路由(/:屏幕名称)绑定到未知蓝图操作 (findOne ) 的尝试。"

我的路线.js是这样的:

'GET /:screenname': {
    contoller: 'UserController',
    action: 'findOne'  
  }

和我的用户控制器:

module.exports = {
    //GET /user/:id
    findOne: function(req, res) {
        User.findOne({
            screenName: req.param('screenname')
        }).exec(function(err, user) {
            if(err) return res.negotiate(err);
            //User.subscribe(req, user.id);
            res.view('profile', {
                user: user
            });
        });
    }
};

我能做错什么?我真的找不到它,也在互联网上。

你需要做的是像这样将路由绑定到控制器:

  '/:screenname': 'UserController.findOne'

这应该给你你想要的东西。

为了更深入地了解您正在执行的操作,您之前使用的方法是查找已生成的蓝图操作之一。如果将其更改为类似的东西,它将使用参数屏幕名称调用蓝图方法"find"。

  '/:screenname': {
    contoller: 'UserController',
    action: 'find'  
  }

findOne 不是蓝图操作,这就是您收到该错误的原因。