ng.app.rubricator.tag
2008-07-10 03:30Компоненты, позволяющие настроить рубрики и рубрицируемые компоненты сайта для редактирования их тегов и работы тегового алгоритма рубрикации.
Продукт
| Название: | |
| ng.app.rubricator.tag | |
| Выложен на PyPI | |
| Репозиторий |
Краткое описание пакета
Пакет разработан для обеспечения работы с тегами. Пакет рассматривает две сущности: рубрику и статью ng.app.rubricator.algorithm.base.txt, которые подготавливает для использования в рубрикаторе на основе тегов. Использование тегов в рубриках и статьях слегка различается: в рубриках могут создаваться новые теги, тогда как в статьях теги выбираются только из числа существующих в рубриках.
Способ реализации
Пакет предоставляет две аннотации - для рубрики и для статьи - и интерфейсы для разрешения связывания аннотация и компонент:
- ITagRubricAnnotationAble
Компоненты, предоставляющие данный интерфейс будут связаны с аннотацией ITagRubricAnnotation, имеющей следующие поля:
- tags
- Поле с выбором тегов из числа введенных хотя бы в одной из аннотаций ITagRubricAnnotation,
- tags_added
- Поле, позволяющее организовать ввод нового тега. Введенный здесь тег считается выбранным в этой аннотации и появляется в других аннотациях в поле выбора.
- ITagItemAnnotationAble
Компоненты, предоставляющие данный интерфейс будут связаны с аннотацией ITagItemAnnotation, имеющей следующие поля:
- tags
- Поле с выбором тегов из числа введенных хотя бы в одной из аннотаций ITagRubricAnnotation,
Работа подсистемы тегирования требует создания и регистрации каталога:
zope.app.catalog.interfaces.ICatalog
в котором должен быть создан индекс tags:
zc.catalog.catalogindex.SetIndex
со следующими параметрами:
- Interface
- ng.app.rubricator.tag.tagrubricannotation.interfaces.ITagRubricSearch
- Field Name
- tags
- Field Callable
- False
Индекс должен быть зарегистрирован под именем tags и интерфейсом:
zc.catalog.interfaces.IIndexValues
После этого становится возможным создание рубрик, создание в них тегов и выбор этих тегов в создаваемых статьях.
Подсистема тегирования разработана для тегового рубрикатора, но, возможно, может использоваться и обособлено.
Вложено:
...



