Python 在所有z3c.form输入字段中规范unicode的最佳方法是什么?

Python 在所有z3c.form输入字段中规范unicode的最佳方法是什么?,python,unicode,plone,z3c.form,Python,Unicode,Plone,Z3c.form,我面临着一个非常简单的问题:我们网站上使用的web字体没有a加组合umlaut(所以ä在两个unicode字符中),但它有a和umlaut字符 由于我们不能真正替换web字体,并且正如所建议的,我们应该将这两个字符转换为一个字符(幸运的是Python已经有了) 所以问题是:如何确保任何文本输入字段都是规范化的?我目前的方法是在创建和编辑时使用事件处理程序遍历所有文本字段并对其进行规范化,但这感觉很容易出错(新内容类型、新字段…) 是否有类似于collective.dexterityindexer

我面临着一个非常简单的问题:我们网站上使用的web字体没有
a
组合umlaut
(所以
ä
两个unicode字符中),但它有
a和umlaut
字符

由于我们不能真正替换web字体,并且正如所建议的,我们应该将这两个字符转换为一个字符(幸运的是Python已经有了)

所以问题是:如何确保任何文本输入字段都是规范化的?我目前的方法是在创建和编辑时使用事件处理程序遍历所有文本字段并对其进行规范化,但这感觉很容易出错(新内容类型、新字段…)

是否有类似于
collective.dexterityindexer
(在适配器中,您可以为特定类型的小部件创建自定义转换器)并使其全局化(对于所有内容类型也是如此)


如果使用
z3c.form
(幸运的是,我们只使用基于z3c.form的表单),这可能吗?

我只需要自定义表单基类,它有一个助手方法normalize(),我将从save()/apply()调用它。你想在z3c.forms上规范unicode吗?你不控制的表单,比如核心Plone表单?@Mikkoohtama,是的,添加/编辑表单,我只是定义了一些接口,用给定的接口创建了一些内容类型,仅此而已,所以我没有自定义表单基类