我目前正在开发一个包含多种自定义内容类型的Plone项目。这些内容类型有几个字段,这些字段又从词汇表中获取它们的值。目前,我刚刚在vocabularies.py
文件中对我的值进行了硬编码:
from Products.Archetypes import atapi
CITIES_LIST = atapi.DisplayList((
('nairobi', 'Nairobi'),
('kisumu', 'Kisumu'),
('mombasa', 'Mombasa'),
('eldoret', 'Eldoret'),
('nakuru', 'Nakuru'),
))
这很好用,没有问题。
唯一的缺点是词汇在代码中被蚀刻,需要程序员/开发人员修改现有词汇。
我需要的是一种方式,网站管理员和不一定是程序员的用户将来可以通过网络界面修改词汇表,即来自其他国家/地区的客户能够更改可用城市列表。< / p>
我看过Products.ATVocabularyManager,但我认为这不符合要求。也许如果有一个网格界面来管理词汇表。我想我必须通过将它们存储为ArcheTypes来管理它们。
有没有办法处理Plone 4中的这种情况?怎么会这样呢?
答案 0 :(得分:6)
Products.ATVocabularyManager应该适用于您的用例。我过去曾多次成功使用它。
它提供管理用户界面来管理词汇表。
如果管理词汇的用户界面不符合您的喜好,也许您可以为项目做出贡献以使其更好?