You can override ModelAdmin.get_form by adding the request as an attribute of the newly created form class (it must be thread safe).
Something like that:
class EntryAdmin(admin.ModelAdmin): form = EntryAdminForm def get_form(self, request, *args, **kwargs): form = super(EntryAdmin, self).get_form(request, *args, **kwargs) form.request = request return form
Then the code in your question should work.
source share