2015-02-08 109 views
2

我想在我的網站上顯示維護頁面。我打算保存一個布爾值到數據庫,以控制何時顯示頁面。我如何才能讓我的控制器路由顯示維護頁面?我想繼續讓帆正常提供腳本,樣式表和圖像。如何顯示維護頁面?

回答

3

您可以使用策略來實現此目的。

// api/policies/inMaintenance.js 

module.exports = function(req, res, next) { 
    var maintenanceMode = ... // get the value 
    if (maintenanceMode) return res.view('maintenance'); 
    next(); 
} 


// config/policies.js 

module.exports.policies = { 
    '*': 'inMaintenance', 
    ... 
} 

在你views文件夾添加maintenance.ejs
所有資產仍然可用。

雖然這種方法有一個缺點,但如果在config/routes.js中有一條直接指向視圖的路徑,它將不會通過該策略。因此,您需要所有路由由控制器處理。

您可以檢查Sails documentation on policies以更好地瞭解它們的工作原理。

+0

這工作完美,謝謝! – 2015-02-09 14:17:16

+0

不客氣! – irobert91 2015-02-09 15:00:40