Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 15, 2011 12:23:12

Cykooz
От:
Зарегистрирован: 2010-10-07
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

BlueBream: как получить текущий request?

Требуется написать адаптер, который адаптирует любой объект реализующий Interface. В адаптере необходимо получить текущего принципала.
Как можно получить текущий request или сразу принципала?



Офлайн

#2 Апрель 15, 2011 12:28:47

Cykooz
От:
Зарегистрирован: 2010-10-07
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

BlueBream: как получить текущий request?

Хы, стоило только создать тему и тут же нашёл ответ - http://wiki.zope.org/zope3/FAQProgramming#how-do-i-get-irequest-object-in-event-handler



Отредактировано (Апрель 15, 2011 12:29:18)

Офлайн

#3 Апрель 15, 2011 13:49:08

Sleepwalker
От:
Зарегистрирован: 2008-07-18
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

BlueBream: как получить текущий request?

Как по мне адаптер в таком случае должен адаптировать два обьекта: интерфейс и запрос (Interface, IRequest). Тогда таких проблем как у Вас не возникнет.



Офлайн

#4 Апрель 15, 2011 13:55:02

Cykooz
От:
Зарегистрирован: 2010-10-07
Сообщения: 46
Репутация: +  0  -
Профиль   Отправить e-mail  

BlueBream: как получить текущий request?

Sleepwalker
Как по мне адаптер в таком случае должен адаптировать два обьекта: интерфейс и запрос (Interface, IRequest). Тогда таких проблем как у Вас не возникнет.
Ну тут мне не выбирать. Адаптер требуется стороннему компоненту, который я не могу менять.
И в общем то найденное мной решение является вполне стандартным. Примерно так же работает метод zope.security.checkPermission, который проверяет наличие указанного пермишена для заданного контекста и не требует при этом request.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version