Fix datagrid template rendering on Django 1.8.
Review Request #7431 — Created June 16, 2015 and submitted
Since datagrids must render each and every cell, we do a bunch of optimizations to prevent all the expensive template machinery from running on each render. We cached the contents of a RequestContext, turning it into a standard Context, and overrode the variables. This prevented a bunch of template context stack manipulation and data fetching. In Django 1.8, the template support has been rewritten for multiple backends. Now, a RequestContext is empty until bound to a template, which happens just before the render, and cleared just after. Now, instead of a RequestContext being populated once during instantiation, it's populated for each template, making it really expensive. It also just didn't work. We now create a dummy template and manually bind the RequestContext to it. This gives us a populated RequestContext we can work with.
The datagrid works again on both Django 1.6 and 1.8.