2017-10-18 2 views
0

Mon projet a plus d'une disposition, je veux créer un dossier pour contenir ces mises en page et les retirer du dossier de vue, mais quand je fais cela, la mise en page ne se charge pas quand je cours L'application.voiles js layout view changer de dossier

Comment pourrais-je résoudre ce problème?

Tx à l'avance.

Répondre

1

Pour résoudre ce problème, vous avez deux options, selon que vous utilisez des routes ou le contrôleur pour servir vos vues. Tout d'abord, disons que vous avez un dossier "mylayouts" dans votre dossier de vues et que ce dossier contient de nombreuses mises en page, par exemple. « layout_home.ejs », « layout_admin.ejs », etc.

Pour utiliser ces dispositions pour une vue spécifique, vous pouvez:

A. Définissez la mise en page en utilisant la population locale dans le fichier de configuration/routes.js, être Assurez-vous d'inclure à la fois le nom du dossier et le nom du fichier de mise en page. par exemple. B. Définissez la disposition dans la réponse du contrôleur, en s'assurant à nouveau d'inclure à la fois le nom du dossier et le nom du fichier de mise en page. par exemple.

/** 
* 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' 
     }) 
    } 

}; 
+0

créer un itinéraire pour chaque vue? Je ne pense pas que ce soit une meilleure façon de résoudre mon problème, tx – krekto

+0

Regardez l'option B. – Glen

+0

ne fonctionne pas, dans mon fichier view.js dans le dossier de configuration j'ai la mise en page: 'layout', 'get/index « : { vue: 'accueil/index', habitants: { mise en page: 'layout_homepage' }} , – krekto