title: query to display subdocument not working
body: <p>I'm fairly new to mongoose and I am trying to write a query that just returns a subdocument within my main document.</p>
  
  <p>My document structure is like this:</p>
  
  <pre><code>PROFILE
      - CONTACTS [ARRAY]
  </code></pre>
  
  <p>I've written the following endpoint to return one contact, where I pass the profile id and the id of the subdocument:</p>
  
  <p>"/:owerId/getcontact/:contactId"</p>
  
  <p>My Express function code looks like this:</p>
  
  <pre><code>router.route('/:ownerId/getcontact/:contactId')
  
      .get(function(req, res){
        Profile.findOne({'owner_id':req.params.ownerId}).then(function(err, profile){
          if(err)
            res.send(err);
  
          profile.findOne({'_id':req.params.contactId}).then(function(err, contact){
            if(err)
              res.send(err);
            res.json(contact);
          })
  
        })
      })
  </code></pre>
  
  <p>But this code returns the whole profile.</p>
  
  <p>When I try to get by ID it does the same thing. Here is my code and just below that is the entire profile that is returned:</p>
  
  <pre><code>router.route('/:ownerId/getcontact/:contactId')
  
  .get(function(req, res){
    Profile.findById(req.params.ownerId).then(function(err, profile){
      if(err)
        res.send(err);
  
        var data = profile.contacts.id(req.params.contactId);
  
      res.json(data);
  
    })
  })
  
  
  
  
  
  {
    "_id": "5886e3692ca4542c453431ee",
    "initial": "u",
    "last_name": "randal",
    "first_name": "chris",
    "owner_id": "5886e32c2ca4542c453431ed",
    "__v": 1,
    "contacts": [
      {
        "last_name": "Eltoro",
        "first_name": "Peter",
        "_id": "5886e3f5a219472cac886a9f",
        "businesses": [],
        "addresses": [],
        "phones": [
          {
            "phone_type": "mobile",
            "phone_number": "555-555-999",
            "_id": "5886e3f5a219472cac886aa2"
          },
          {
            "phone_type": "home",
            "phone_number": "999-876-000",
            "_id": "5886e3f5a219472cac886aa1"
          }
        ],
        "emails": [
          {
            "email_address": "tim@time.com",
            "_id": "5886e3f5a219472cac886aa0"
          }
        ]
      },
      {
        "college": "University of WA",
        "highschool": "Kalaheo",
        "birthday": "1990-12-22T08:00:00.000Z",
        "last_name": "Smith",
        "first_name": "Suzanne",
        "_id": "5886fb7fac288c2e31eabe0a",
        "businesses": [],
        "addresses": [
          {
            "zip": "98777",
            "state": "WA",
            "city": "Seattle",
            "address_2": "Apt 234",
            "address": "124 194th St. SW",
            "_id": "5886fb7fac288c2e31eabe0e"
          }
        ],
        "phones": [
          {
            "phone_type": "mobile",
            "phone_number": "206-899-9898",
            "_id": "5886fb7fac288c2e31eabe0d"
          },
          {
            "phone_type": "home",
            "phone_number": "206-789-0987",
            "_id": "5886fb7fac288c2e31eabe0c"
          }
        ],
        "emails": [
          {
            "email_type": "personal",
            "email_address": "suzanne@smith.com",
            "_id": "5886fb7fac288c2e31eabe0b"
          }
        ]
      },
      {
        "last_name": "Alabaster",
        "first_name": "Cindy",
        "_id": "5888b0bd3c025e54476828d9",
        "businesses": [],
        "addresses": [],
        "phones": [
          {
            "phone_type": "home",
            "phone_number": "999-999-0909",
            "_id": "5888b0bd3c025e54476828dc"
          },
          {
            "phone_type": "home",
            "phone_number": "000-000-0000",
            "_id": "5888b0bd3c025e54476828db"
          }
        ],
        "emails": [
          {
            "email_address": "Some@them.com",
            "_id": "5888b0bd3c025e54476828da"
          }
        ]
      }
    ],
    "businesses": [],
    "addresses": [],
    "phones": [
      {
        "phone_number": "999-999-9999",
        "phone_type": "mobile",
        "_id": "5886e37f2ca4542c453431ef"
      }
    ],
    "emails": []
  }
  </code></pre>