title: Trying to unnest promises with mongoose queries
body: <p>I currently have a create method that creates a new adventure, saves it, then adds the resulting adventure's ID to a user. The only problem is, it has nested promises and I'm wondering if there's a way to prevent that. The code:</p>
  
  <pre><code>function create(req, res) {
    new Adventure(req.body)
      .save()
      .then(function (result) {
        User.findByIdAndUpdate(
          result.dm_id,
          { $push: { adventures: result._id }}
        )
          .exec()
          .catch(fail); // FIXME: nested promises :(
        res.status(200).send(result);
      })
      .catch(fail);
  }
  </code></pre>
  
  <p>I think the catch here is that I need to send the response back with the adventure I created, rather than the user I add the adventure to.</p>
  
  <p>Thanks!</p>