Как зарегистрировать Javascripts против определенного представления в Plone
Я хотел бы, чтобы Plone загружал Javascripts только для определенного представления.
Я действительно очень хочу загрузить их в этом единственном представлении, которое открывается редко и имеет только JS-код администратора. Я все еще хочу, чтобы Javascript обрабатывался portal_javascripts, чтобы поддержка удаления кэширования была автоматической.
Что это лучший способ зарегистрировать Javascripts против конкретного представления и, возможно, его подклассов? По интерфейсу? Полным точечным названием класса?
2 ответа
Что Мартейн прав; однако, если вам действительно нужно / вы хотите сделать это с portal_javascripts, убедитесь, что базовый класс реализует интерфейс, а затем сделайте что-то подобное для вашего условного оператора в значении реестра portal_javascript.
python: context.restrictedTraverse('@@plone_interface_info').provides('my.package.interfaces.IMyInterface')
Я никогда не беспокоюсь о таких одноразовых ресурсах JS. Просто загрузите JS напрямую с конкретным видом. Вы всегда можете поручить нескольким пользователям этого вида CTRL-Reload.
Загромождение portal_javascript только увеличит нагрузку на обслуживание, так как вам нужно убедиться, что вы не нарушите слияние глобальных ресурсов JS.