问题标签 [zend-form-fieldset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
zend-framework2 - 如何在 ZF2 中装饰集合中的字段集元素?
在我当前的项目中,我使用嵌套Zend\Form\Fieldset
的 s 和Zend\Form\Collection
s,它们提供了一种非常舒适的方式来将复杂的对象结构映射到表单,以便从表单输入中获取完整的对象(准备保存)。
问题:我有一个Fieldset
FooFieldset
包含Element
foo_element
一个Label
“foo元素”(代码见下文)并且需要使用它两次:1。作为一个单一的Fieldset
;2. 在一个Collection
。首先,我希望显示它的元素;其次,我想禁用标签(或者可能更改它们)。(我也想在第二种情况下用另一种方式格式化,但现在最重要的是标签。)
如何根据上下文装饰Zend\Form\Element
aZend\Form\Fieldset
中的s?Zend\Form\Element\Collection
代码
解决方法 1
可以使用另一个,例如(sometnig like )Fieldset
的子类并在那里调整(和其他设置)。FooFieldst
FooFieldsetForUsingInCollection extends FooFieldst
Label
解决方法 2
也可以访问视图脚本中Collection
的Element
s 并在那里操作它们(如这里所示)。但我真的不喜欢这个解决方案,因为那时Fieldset
它在多个地方定义。如果Collection
元素的数量是可变的,它还需要进一步的努力。
zend-framework - 具有多个元素的字段集,用于使用 ZF2 和 Doctrine2 的表单中的循环代码
我是 ZF2 和 Doctrine2 的新手。
我想知道,我可以将字段集用于在表单中重复的类似元素吗?同一个形式可能有几个相似的元素,并且有许多相似的形式。
这些元素映射到实体中的常规字段(没有一对多或多对一关系),并且同一实体中有更多字段。
如果可能的话,我该如何为这样的字段集设置对象?
我收到以下错误:
这是我到目前为止所尝试的:
工厂示例
字段集示例
实体示例:
表格示例:
基础能力表格:
zend-framework2 - 如何使字段多次注入到ZF2中唯一的Form?
我有一个非常复杂的表格,有几个嵌套Fieldset
的 s 和Collection
s。表单的某些部分是恒定的,其他部分是可变的:
BasicSettings EndpointBasicSource(常量部分) EndpointBasicTarget(常量部分) SpecificSettings EndpointType{TYPE}Source(变量部分) EndpointType{TYPE}Target(变量部分)
EndpointBasicSource
andEndpointBasicTarget
包含一个,ServerFieldset
提供Field
server_name
. 这意味着:表单至少包含2
server_name
Field
s。
在SpecificSettings
取决于EndpintType
否,一方或双方可以包含一个服务器Collection
(options.target_element.type => ServerFieldset
),其中最多有5
服务器。
这是一个高度简化的模式:
现在服务器应该是唯一的(在server_name
表单中的所有字段中,值可能不会重复出现)。但是如何做到这一点?问题是,它ServerFieldset
是通过多个其他Fieldset
s/ Collection
s 注入的,并且唯一性验证需要与server_name
Field
所有这些 s 相关。
如何解决这个问题并server_name
在整个表单中实现唯一性验证?
validation - 如何使字段验证依赖于 ZF2 中另一个 Fieldset 的字段?
在我的表单中,我有一些字段,应根据以下另一个子字段集中的某些字段(-s)进行验证Form
:
所以有一些验证规则需要实现,它们会影响多个字段集的字段。例如:
至少
form.main.*.xyz.field_d
必须设置。这意味着,我不能required
直接在 中定义规则XyzFieldset
,因为有一个条件并且它位于XyzFieldset
.的值
form.main.foo.field_a
必须是grater than
的值form.main.bar.field_c
。
在哪里/如何定义取决于表单其他子字段集的字段值的验证规则?
validation - 在 ZF2 中的表单级别添加验证的正确方法是什么?
有一个包含许多嵌套字段集的复杂表单。某些字段需要根据另一个字段集中的字段(-s)进行验证。所以我不能直接在 中定义所有验证规则getInputFilterSpecification()
,Fieldset
因为我不能访问其他字段集(只有子字段集)。这样做的唯一方法是扩展Form
验证。正确的?如果是这样,该怎么做?
像这样?或者是一种更清洁的方法来解决这个问题?
zend-framework2 - 如何在 Zend Framework 2 的 Fieldset 子类中设置元素的类型?
我有两个非常相似Fieldset
的 sMyFooFieldset
和MyBarFieldset
. 为了避免代码重复,我创建了一个AbstractMyFieldset
,将整个代码移到那里,并希望处理init()
具体类的方法的差异:
AbstractMyFooFieldset
MyFooServerFieldset
我想type
为元素设置 the 和其他一些配置,例如 thetype
和required
属性。设置属性好像还可以,至少我可以设置required
属性。但我无法设置类型——Element#setType(...)
不存在。
编辑后如何设置type
a ?Zend\Form\Element
add
php - zf2/zf3 使用对象水合多个字段集
问题:使用 $form->bind($object) 时,表单中的多个字段集未填充/水合。您如何以 2 个不同的实体对象的形式填充 2 个不同的字段集?我有 2 个字段集:FieldsetA、FieldsetB
表单 RegisterFrom 在其 init() 方法中调用这些
创建字段集:(注意注释掉水合尝试)
控制器:
看法:
表单在视图中正确呈现,但没有填充数据。
注意:不使用 Doctrine,但我从数据库中检索数据 OK。注意:如果我将此标志设置 为“use_as_base_fieldset”=> true,则填充 1 个对象(服务提供者),反之亦然,如果我将位置字段设置为“true”,则填充。我一直在寻找几个小时,反复试验但没有成功,我希望这只是我的疲劳,错过了一个简单的设置/配置步骤来让它工作。
摘要:如何在一个表单中使用 2 个或更多实体填充 2 个或更多字段集?绑定(),字段集->绑定值()?
试过:
这些是一些关闭但仍无法通过单独的实体填充两个字段集的链接。 具有多个对象和字段集的 ZF2 表单水合 https://framework.zend.com/manual/2.4/en/modules/zend.form.collections.html 水合来自字段集 ZF2 的多个对象
集合(产品/品牌/类别)示例意味着使用“use_as_base_fieldset”=> true 的“单个”集合,用于绑定()...?
zend-framework2 - 如何在 Zend Framework 2 中获取单选按钮元素的选定选项?
在一个Fieldset
我有一个Element\Radio
foo
和Element\Text
bar
。
字段的验证bar
取决于所选foo
选项。如果我能得到选定的值,这很容易实现foo
:
但是没有办法Radio#getCheckedValue()
。好吧,我可以遍历 $this->get('foo')->getOptions()['value_options']
,但这真的是唯一的方法吗?
如何获得(在Fieldset#getInputFilterSpecification()
)中的选定选项Zend\Form\Element\Radio
?
zend-framework2 - ZF2 嵌套数据验证
我正在努力进行我的验证。我将数据以如下格式发布到控制器:
我将字段/过滤器和表单划分为不同的类,然后将它们聚集在表单的控制器中,如下所示:
但它不能正常工作,看起来它只是忽略了嵌套数组(或忽略了所有内容)。我错过了什么?
谢谢你。