通过网络管理Plone词汇表

Fra*_*ine 3 zope plone vocabulary

我目前正在开发一个包含多种自定义内容类型的Plone项目.这些内容类型有几个字段,这些字段又从词汇表中获取它们的值.目前,我只是在vocabularies.py文件中硬编码我的值:

from Products.Archetypes import atapi

CITIES_LIST = atapi.DisplayList((
    ('nairobi', 'Nairobi'),
    ('kisumu', 'Kisumu'),
    ('mombasa', 'Mombasa'),
    ('eldoret', 'Eldoret'),
    ('nakuru', 'Nakuru'),
    ))
Run Code Online (Sandbox Code Playgroud)

这很好用,没有问题.

唯一的缺点是词汇表在代码中被蚀刻,并且需要程序员/开发人员来修改现有的词汇表.

我需要的是一种方式,网站管理员和不一定是程序员的用户将来可以通过网络界面修改词汇表,即来自其他国家/地区的客户能够更改可用城市列表.

我看过Products.ATVocabularyManager,但我觉得它不符合要求.也许如果有一个网格界面来管理词汇表.我想我必须通过将它们存储为ArcheTypes来管理它们.

有没有办法处理Plone 4中的这种情况?怎么会这样呢?

van*_*eem 6

Products.ATVocabularyManager应该适用于您的用例.我过去曾多次成功使用过它.

它提供管理UI来管理您的词汇表.

如果管理词汇的UI不符合您的喜好,也许您可​​以为项目做出贡献以使其更好?