用于plone的多语言字段
collective.multilanguagefields的Python项目详细描述
简介
小心!
这个方案仍处于公开试验阶段。
这个包旨在提供一个简单的方法,使一些领域的灵活性 内容类型可用于多种语言(“多种语言”)。 它尝试像raptus.multilanguagefields那样处理原型内容 类型。
假设
- 网站应该可以在没有 必须迁移内容。 (您可以修改特定于客户的软件包的代码。)
使用量
多语言文本行:
from collective.multilanguagefields.fields import TextLine as MLTextLine from plone.supermodel import model class IMyType(model.Schema): some_text = MLTextLine( title=_(u"Fieldname"), required=True, )
功能
兼容性
扑通一声4.3然后向上。
使标题字段多语言化
不能使用默认的plone.app.content.interfaces.INameFromTitle 行为。 相反,请使用collective.multilanguagefields.interfaces.INameFromMultiLanguageTitle
此外,您的内容类型需要实现自己的Title()方法 它考虑到title属性包含字典。 来自utils.py的ml_value方法可能有帮助
在模板中使用多语言字段
您可以执行以下操作:
<span tal:content="context/ml_value/my_field" />
也可以指定默认值:
<span tal:define="ml_value context/ml_value" tal:content="python: ml_value('my_field', 'no translation found')" />
变更日志
0.7(2016-01-22)
- 当不需要字段且没有给出其他值时,不要引发DefaultLanguageMissing。
- [moverkamp]
0.6(2015-01-05)
- 什么都没变
0.5(2015-01-05)
- 什么都没变
0.4(2015-01-05)
- 什么都没变
0.3(2015-01-05)
- 什么都没变
0.2(2015-01-05)
- 什么都没变
0.1.1(2015-01-02)
- 什么都没变
0.1(2015-01-02)
- 初始版本