我正在编写一个简单的CMS,用户可以在每个页面上编辑其附带的所有语言。例如,用户提交表单时的原始$_POST
输入通常必须如下所示:
array(
'fr' => array(
'name' => 'Some name in French',
'content' => 'Some content in French'
),
'en' => array(
'name' => 'Some name in English',
'content' => 'Some content in English'
),
'de' => array(
'name' => 'Some name in German',
'content' => 'Some content in German'
)
)
管理简单的输入没有问题,看起来像典型的key => value
对。然而,我不能让这个工作,我花了几个小时搜索类似的问题没有运气,所以这里是我的问题:
- 如何在模块的形式定义?
- 如何相应地附加验证规则?
ZF2的解决方案非常简单。
为每个类型创建一个带有名称(de/en/fr)的Fieldset,并在每个Fieldset中定义字段(name/content)和验证本身。
然后将3个字段集组合在一个表单中,并在视图中显示。
提交的POST数据将自动分组在字段集的名称内。
http://www.aronkerr.com/2013/11/zf2-form-collection-validation-unique.html