Sails js布局视图更改文件夹

sails js layout view change folder

我的项目有多个布局,我想创建一个文件夹来包含这些布局并将它们从视图文件夹中拉出,但是当我这样做时,布局在我 运行应用程序。

我该如何解决这个问题?

提前Tx。

要解决这个问题,您有两种选择,具体取决于您是使用路由还是控制器来为您的视图提供服务。

首先,假设您的视图文件夹中有一个文件夹 "mylayouts",并且该文件夹包含许多布局,例如。 "layout_home.ejs"、"layout_admin.ejs"等

要将这些布局用于特定视图,您可以:

一个。在 config/routes.js 文件中使用 locals 设置布局,确保同时包含文件夹名称和布局文件名。例如

'/': {
    view: 'homepage',
    locals: {
        layout: '/mylayouts/layout_home.ejs'
    }
}

乙。在控制器的响应中设置布局,再次确保包含文件夹名称和布局文件名。例如

/**
 * AdminController
 *
 * @description :: Server-side logic for managing admins
 * @help        :: See http://sailsjs.org/#!/documentation/concepts/Controllers
 */

module.exports = {

    index : function(req, res){
        res.view({
            layout : '/mylayouts/layout_admin.ejs'
        })
    }

};