title: How to serialize/deserialize multiple local strategie
body: <p>How can I serialize/deserialize multiple local strategies:
   I have already tried this <a href="https://stackoverflow.com/questions/20052617/use-multiple-local-strategies-in-passportjs">Use multiple local strategies in PassportJS</a>  but not success. </p>
  
  <p>This is my code : </p>
  
  <pre><code>passport.use('user', new LocalStrategy( function(username, password, done) {
      UserSchema.findOne({ username: username }, function(err, user) { 
      // ...
         return done(null, user);
      });
  }));
  
  passport.use('admin', new LocalStrategy( function(username, password, done) {
      adminSchema.findOne({ username: username }, function(err, user) {
      // ...
          return done(null, user);
      });
  }));
  
  passport.serializeUser(function(user, done){
       done(null, user.id);
  });
  
  passport.deserializeUser(function(id, done){
     adminSchema.findById(id, function(err, user){
       if(err) done(err);
         if(user){
           done(null, user);
         } else {
            user.findById(id, function(err, user){
            if(err) done(err);
            done(null, user);
         })
     }
  });
  </code></pre>