Отмените регистрацию каталога ресурсов zcml в Plone.

Я хотел бы "отменить регистрацию" каталога ресурсов, зарегистрированных с помощью configure zcml и директивы

Я удалил свою пользовательскую надстройку, которая первоначально зарегистрировала каталог ресурсов, но другие пакеты по-прежнему могут вызывать /++resource++my.package и извлекать ресурсы из удаленного дополнения... есть ли директива для его отмены регистрации правильно или через ZMI или одноразовый скрипт как-нибудь?

Ссылка: http://plone.org/products/dexterity/documentation/manual/five.grok/browser-components/resource-directories

3 ответа

Решение

Вы путаетесь между установкой и удалением постоянных конфигураций через панель управления Plone и фактическим удалением яйца из вашей сборки.

Каталоги ресурсов зарегистрированы в пакетных файлах ZCML и не являются постоянными. Вам придется удалить пакетное яйцо из вашей сборки, чтобы эти файлы ZCML не загружались.

Если по какой-то причине вам нужен код, предоставляемый пакетом egg, но вы абсолютно не хотите, чтобы ресурсы регистрировались, вам нужно использовать z3c.unconfigure пакет, чтобы снова отменить регистрацию каталогов ресурсов.

Если только они не будут активно мешать чему-либо, я не вижу в этом необходимости. Обратите внимание, что нет абсолютно никакого вреда, если URL-адреса ресурсов по-прежнему доступны на вашем сайте Plone.

Вы хотите использовать z3c.unconfigure

http://pypi.python.org/pypi/z3c.unconfigure

Почему бы вам просто не удалить ненужную регистрацию из пакета, если вы ее не используете?

Другой вариант - зарегистрировать каталог ресурсов для определенного слоя браузера (я полагаю, что это возможно в ZCML, в любом случае), а затем установить этот слой только вместе с пакетом, используя browserlayer.xml в GenericSetup. Это сложнее, хотя.

Однако, как говорит Мартейн, не стоит оставлять его там, где он есть.

Другие вопросы по тегам