2013-06-05 18 views
4

我想運行一個正則表達式,以在我的用戶架構中的虛擬字段上實現「LIKE」類型的功能。虛擬字段上的Mongoose正則表達式

下面的語句適用於所有領域的除了 * 全名 *

var searchString = stringUtils.removeMultipleSpaces(stringUtils.stripSpecialCharacters(req.param('searchString'))); 
     var regex = new RegExp(searchString); 
     var query = User.find().or([{ 'firstName' : { $regex: regex}}, { 'lastName': { $regex: regex }}, 
      { 'userName': { $regex: regex }}, { 'fullName' : {$regex: regex }}]).sort('lastName'); 
     query.select('firstName lastName userName fullName'); 
     query.exec(function(err, users) { 
      res.send(users); 
     }); 

在貓鼬架構的虛擬域聲明爲用戶

//full name 
UserSchema.virtual('fullName') 
    .get(function() { 
    return this.firstName + ' ' + this.lastName; 
}); 

什麼是正確的做法獲取fullName字段正則表達式是否正常工作?

回答