Как получить доступ к объекту запроса в плагине Django-CMS?

У меня есть плагин Django-CMS, который используется для отображения списка объектов. Необходимая функциональность плагина состоит в том, что список разбит на страницы и может быть переназначен на основе свойств объектов в списке.

Обработка этой функции с помощью ajax не является идеальным решением в данном конкретном случае, поэтому я планировал использовать django Paginator, для которого требуется параметр запроса страницы, и передавая параметр "порядок запроса", который затем я использовал бы для определения порядок запроса.

Проблема заключается в том, что я не вижу доступа к объекту запроса изнутри функции рендеринга плагинов.

Кто-нибудь знает, возможно ли получить доступ к объекту запроса из функции рендеринга или может предложить обходной путь?

Ответ 1

Метод визуализации CMSPluginBase принимает объект контекста. Вы должны иметь возможность получить доступ к запросу через этот объект, если ваше представление использует экземпляр RequestContext.

class MyCoolPlugin(CMSPluginBase):

    def render(self, context, instance, placeholder):

         #Do something with the request, like access the user
         current_user = context['request'].get('user', None)
         ...