title: Mongoosejs - Filter out populate results
body: <p>I want to return all chat conversations, where the logged in user (user_id) is  a participant. </p>
  
  <p>I want to populate the participants only returning the profile.firstname (maybe some other later), i then want to filter out the participants so that it does not bring back the loggedInUser (user_id) in the participants array. </p>
  
  <p>chat.controller.js INDEX</p>
  
  <pre><code> Chat.find({participants: user_id})
              .populate('participants', {
                  select: 'profile.firstname',
                  where('_id').ne(user_id) // This need to change
              })
              .exec(function (err, chats) { });
  </code></pre>
  
  <p>chat.model.js</p>
  
  <pre><code>const mongoose = require('mongoose');
  const Schema   = mongoose.Schema;
  
  let ChatSchema = new Schema({
  
          participants: [{
              type: Schema.Types.ObjectId, ref: 'User'
          }],
  
          messages: [{
              type: Schema.Types.ObjectId, ref: 'Message'
          }],
  
      },
      {
          timestamps: {createdAt: 'created_at', updatedAt: 'updated_at'}
      });
  
  module.exports = mongoose.model('Chat', ChatSchema);
  </code></pre>