2013-08-15 15 views
11

Giriş formumu içeren kısmi bir görünüm var. Bir ajax çağrısından denetleyicime dönüştürmek istiyorum.Sails.js - Bir denetleyiciden kısmi nasıl işlenir?

postlogin: function (req,res) { 

    var username = req.param('username'); 
    var password = req.param('password'); 

    User.find({ 
     username: username, 
     password: password.salt() 
    }).done(function(err, users){ 
     if(users.length == 1){ 
      // Here I want to return a partial view, not a view 
      res.view('home/login', {message: 'Login success!'}); 
     }else{ 
      // Here I want to return a partial view, not a view 
      res.view('home/login', {message: 'Login failed!'}); 
     } 
    }); 
    }, 

cevap

20

Ah:

Bu benim kısmi görünümü dönecekti örnektir! Bulundu! görünümünüzü kısmi bir görünüm ise

, basitçe layout: null belirtin:

sayfanın
res.view('home/login', {message: 'Login failed!', layout: null}); 
+3

Yep! Ve eğer düzeni global olarak devre dışı bırakmak istiyorsanız (işleri daha Express-3-ish kısmi-ish şekilde yapıyorsanız) 'config/views.js' dosyanıza' layout: false 'ayarlayabilirsiniz. – mikermcneil

5

Bottom: Ne çoklu düzenleri kullanma hakkında http://sailsjs.org/#!documentation/views

?

Express 3 yerleşimler için yerel destek kaldırıldı. Sails'de bunu sürdürmeyi başardık, ancak resmi olarak çoklu düzenleri desteklemiyoruz. yerine yerel düzen ile özel düzenini gösteren, en azından Ejs içinde, söz konusu , sen _layoutFile kullanmalıdır:

/** 
* HomeController 
*/ 
module.exports = { 

    index: function (req, res) { 
     res.view({ 
      _layoutFile: '../layouts/other.ejs' 
     }); 
    }, 

}; 

Yelkenler v0.9.7