passing data to partials in ejs

I am using ejs-locals to give me support for partials in express/node.js

The problem is the library has a bug when you include a partial within a partial. The 2nd partial include is trying to find the file relative to the grandparent or page.ejs that called the 1st partial.

So this requires I either flatten out my ./views so all files are only in ./views (no sub-dirs)...or I symlink to the partial from the directory that made the initial partial call.

Perhaps there is another/better way of doing this?

In a lot of my views, I have a face mash, that gives me html with people's avatars. I can't just use <% include faces %> and call it a day, because the collection of people comes from many different objects depending on the page from which it is called.

here's an example:

on an item page, I call <% include stats %>, which calls faces partial

<- partial('faces', { people: item.users }) %>

or on a list page, I call <% include stats %>, which calls faces partial

<- partial('faces' { people: list.users }) %>

The partial 'faces.ejs' just loops over people and spits out a link to their profile. But because I can't include a partial within a partial I'm stuck either sym-linking all over the place or trying something different.

./views/list/index.ejs calls a stats.ejs partial that calls faces.ejs partial...so I need to symlink ./views/list/faces.ejs to ./views/stats/faces.ejs for it to work.

You cannot pass data to a simple include, so I cannot pass in different collections of users depending on the context in which it was called.

<% include faces %> would require the face.ejs loop over either item.users or list.users hardcoded in faces.ejs

What else can I do that will work with nested partials/includes? I have filed a bug with ejs-locals, and a few others have as well, but its been a month w/o any fix.