Skip to content

Plone.org.ru

Sections
Personal tools
You are here: Home » Статьи » ZOPE ID обьекта на родном языке
Поддержка
Для общения можно использовать списки рассылки: Zope3 и Plone
Дружественный сайт Zope3.ru
 

ZOPE ID обьекта на родном языке

Для тех кто хочет научить ZOPE полностью понимать русский (и другие) языки в поле ID.

Кого всегда интересовало, как сделать так чтобы Zope понимал объекты с ID на русском языке.

Как известно в Zope при добавлении объекта необходимо указывать идентификатор ID который, должен состоять из знаков ASCI. В ином случае выдаётся ошибка.

Zope проверяет наличие символов и выдаёт ошибку если ID не соответствует этим требованиям.

Проверку можно отключить в ObjectManager

$ZOPE/lib/python/OFS/ObjectManager.py

if bad_id(id) is not None:
     raise BadRequest, (
     'The id "%s" contains characters illegal in URLs.' % escape(id))

Необходимо переделать в

    if bad_id(id) is not None:
#        raise BadRequest, (
#            'The id "%s" contains characters illegal in URLs.' % escape(id))
        Pass

После чего следует перезапустить Zope-Instance

Теперь Zope позволяет создавать объекты, на любом языке включая, русский.

Всё проверено в ZOPE2.10, работает без каких либо нареканий.

Пример: http://www.mymir.ru/%C3%B6%C3%A4

Оригинал и возможные добавления тут.

Created by bouillon
Last modified 2007-06-05 04:19

А зачем?

Posted by d9frog9n at 2007-06-05 10:05

Все браузеры, за исключением konquerror превратят путь в набор юникодных компонент. Может быть плюсом при раскрутке.. Но, факт, будут проблемы с talеньем и dtmlеньем объектов с не-аски индентификаторами.

 

liveinternet.ru: показано число посетителей за сегодня