title: Failed to update single property by mongoose
body: <p>Frist I have read and try the solution in the post of <a href="https://stackoverflow.com/questions/11655270/mongoose-and-partial-select-update">mongoose-and-partial-select-update</a>.
  However when I try to use the traditional style, query would work.</p>
  
  <p>My schema:</p>
  
  <pre><code>var userSchema = mongoose.Schema({
      local: {
          email: {
              type: String,
              index: {
                  unique: true,
                  dropDups: true
              }
          },
          password: String,
          displayName: String,
          avatar: {
              type: String,
              default: "./img/user.png"
          },
          role: {
              type: String,
              default: "student"
          },
          ask_history: [
              {
                  question_id: {
                      type: mongoose.Schema.Types.ObjectId,
                      ref: 'questionAnswer'
                  },
                  favorite: Boolean,
                  ask_time: Date
              }
          ],
          interest: [String]
      }
  })
  </code></pre>
  
  <p>Working Update function:</p>
  
  <pre><code>User.findById(id, function(err, User) {
              if (err) {
                  throw done(err);
              }
              if (!User) {
                  return;
              }
              User.local.role = "admin";
              User.save(function(err, updatedUser) {
                  if (err) {
                      throw err
                  } else {
                      //good
                  }
              })
          });
  </code></pre>
  
  <p>However if I do this:</p>
  
  <pre><code>User.update({_id : id},
    {$set{
        local:{role:"admin"}
       }
    },function(...){...}
  });
  </code></pre>
  
  <p>Code above will overwrite user into:</p>
  
  <pre><code>{
    _id : "...",
    local: {
            role : "admin"
           }
  }
  </code></pre>
  
  <p>I read that $ will make the update only changing property, where I did wrong?</p>