Sails.js:如何在单一模型的服务器端EJS视图中访问数据

时间:2013-07-17 00:09:20

标签: ejs sails.js

Sails.js Wiki清楚地描述了如何遍历模型数组并生成HTML。见https://github.com/balderdashy/sails/wiki/views。但是,我不清楚如何获取详细信息视图的模型。

给定通过shell命令生成的模型:sails generate user,将会有以下路径:

/user
/user/:id

(此处:id是用模型的唯一ID替换的标记。有关详细信息,请参阅http://sailsjs.org/#documentation/routes。)

wiki的示例处理第一条路线/user,但是当你去/user/:id时会发生什么 - 你如何从EJS视图中获得模型?

我希望像<%= model.propertyName %>这样的东西可行。

请注意,我要求在服务器上生成HTML 。 (我知道如何获取数据并呈现客户端。)

1 个答案:

答案 0 :(得分:10)

您可以创建与路线匹配的控制器操作,并手动将找到的模型传递给视图。

在UserController中:

find: function(req, res) {
    User.findOne({'id': req.params['id']}, function(err, user) {
        res.view({user: user})
    })
}

然后您可以在views / user / find.ejs中引用此模型:

<%- user.id %>
<%- user.name %>