I opened the following pull-request https://github.com/emberjs/data/pull/1579 supporting query params with store.find
and also allowing to pass a query to record.reload().
I’m myself requiring this not just for loading related documents but for
handling partially loaded records.
I would like to see this with the exact use case that you specify. It would be nice to request which related documents that you require in the query string rather than just always including them in the API response.
Adding the functionality in won’t really change how the find and reload functions work currently so I don’t see any issues with adding it to ED master. It seems rather hacky to have to have different endpoints to do this.
Being able to pass a query object to store.find('invoice', 42, query ) and have it return a DS.PromiseObject instead of DS.PromiseArray, would be handy so we can skip the ..get('firstObject') in the success handler.
Caching wise it should just behave like findQuery (no caching).