¿Hay alguna forma mejor de trabajar con modelos anidados (asociados) en Sails JS?

He conectado mi aplicación SailsJs a una base de datos Mongodb. Estoy trabajando en una aplicación analítica. Estos son los modelos principales en mi aplicación:

User Project Report Event

Un usuario puede tener muchos proyectos, un proyecto puede tener muchos informes y un informe puede tener muchos eventos. He creado estas relaciones usandocollection ymodel propiedades de mis atributos de modelos. Mi problema es por qué es tan difícil encontrar eventos de usuarios específicos. Desearía poder hacer esto:

User.
  find({id: id}).
  populate('projects').
  populate('reports').
  populate('events').
  then(function (eventsOfMyUser) {
  });

pero como soloprojects es un atributo de miUser modelar solo las primeras obras pobladas. ¿No debería ser una forma más fácil de encontrar un modelo profundo en lugar de escribir bucles asíncronos desagradables y confusos en mi controlador o código de modelo?