如何使用注释实现具有元素数组的 Zend Form 实体?

How can I implement a Zend Form entity with an array of elements, using Annotations?

我需要一个表格来记录 "sets of data",其中每组由几个数字组成。用户可以选择添加额外的集合,最多需要多少。在某些情况下,最多可以输入 70 个这样的集合,因此需要一个数组。

查找 Zend Form,我喜欢使用 Annotations 功能 (https://docs.zendframework.com/zend-form/quick-start/#using-annotations) 创建表单的方法,因为它给我一个整洁的 "object",我可以用于诸如通过使用 Doctrine 将其直接保存到数据库,然后检索它的事情。

问题

如何使用 Zend Form 在 PHP 中定义一个表单,其中表单具有可扩展的元素集,我可以在其中使用 Doctrine 管理该实体?

使用

/**
 * @Annotation\ComposedObject({
 * "target_object":"Namespace\Entity\ElementInput",
 * "is_collection":"true"
 * });
 *
 * @var ElementInput[]
 */
private $elements;

稍后定义要显示的元素数:

$form->get("elements")->setCount($count);