Sails.js非静态路由URL

时间:2014-08-18 05:27:00

标签: node.js express sails.js

所以我正在使用这个Sails.js flash message for user registration,但后来我遇到了一个新问题。所以基本上我在用户控制器中使用以下内容将user/register.js文件的非静态内容呈现给客户端。

'register': function(req, res){
    res.view();
},

但这意味着访问注册页面的地址为http://localhost/user/register。是否可以更改此网址以使用http://localhost/register而无需网页重定向(可能来自上面的代码本身)?我相信这可以使用自定义重定向Custom Routes来处理。但有时使用重定向可能会很丑陋吗?

2 个答案:

答案 0 :(得分:3)

您链接到正确的文档,但未查看正确的部分。您想使用controller/action custom route syntax / register 路由到UserController.register操作:

"/register": "UserController.register"

"/register": {controller: 'user', action: 'register'}
config / routes.js 中的

会做你想要的。

要停用默认的 / user / register 路线,您可以1)在 config / blueprints.js 中将actions设为false (这将关闭所有默认控制器/操作路由),或在 config / routes.js 中明确禁用路由:

"/user/register": {response: 'notFound'}

答案 1 :(得分:0)

OP's solution to the case in the comment.

[I was not able to solve "/user/register": {response: 'notFound'} by sgress454 proposal]. However, turning actions to false in config/blueprints.js did the trick.

Sails version < 0.10.x because the other answer solution should work here.