如何将一个Field多次注入ZF2中唯一的Form?

aut*_*tix 6 zend-form zend-framework2 zend-form2 zend-form-collection zend-form-fieldset

我有一个非常复杂的形式,有几个嵌套的Fieldsets和Collections.表单的某些部分是常量,其他部分是可变的:

BasicSettings EndpointBasicSource(常量部分)EndpointBasicTarget(常量部分)SpecificSettings EndpointType {TYPE}源(可变部分)EndpointType {TYPE}目标(可变部分)

EndpointBasicSourceEndpointBasicTarget包含ServerFieldset,它提供的Field server_name.这意味着:表单至少包含2 server_name Fields.

SpecificSettings取决于EndpintType否,一方或双方可以包含服务器Collection(options.target_element.type => ServerFieldset),其中包含最多5服务器.

这是一个强烈简化的架构:

在此输入图像描述

现在服务器应该是唯一的(在server_name表单中的所有字段中,值可能不会重复).但是怎么做呢?问题是,ServerFieldset通过多个其他Fieldsets/Collections 注入,并且唯一性验证需要与server_name Field所有s中的s 相关.

如何解决这个问题server_name并对整个表单中的所有内容进行唯一性验证?