Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在窗体中不显示子窗体_Php_Forms_Symfony_Symfony Forms - Fatal编程技术网

Php 如何在窗体中不显示子窗体

Php 如何在窗体中不显示子窗体,php,forms,symfony,symfony-forms,Php,Forms,Symfony,Symfony Forms,我有一个包含表单的表单。表单链接到对象“项目”,它包含许多链接到对象“假设”的表单。两者之间的关系为1..M的项目假设 要在我的应用程序中创建项目,我想显示项目formType,但我不想显示AssumptionType表单 现在发生的事情是,当我在我的小树枝上做了一个表单\u end()时,它呈现了一个空白的假设表单,因此我的项目表单永远无效(我假设它与不隐藏假设表单的事实相关联) 那么,我如何才能使这些表单不显示,并使我的项目表单有效呢?如果您使用包含其他表单的表单,是因为您需要这样做,否则,

我有一个包含表单的表单。表单链接到对象“项目”,它包含许多链接到对象“假设”的表单。两者之间的关系为1..M的项目假设

要在我的应用程序中创建项目,我想显示项目
formType
,但我不想显示
AssumptionType
表单

现在发生的事情是,当我在我的小树枝上做了一个
表单\u end()
时,它呈现了一个空白的假设表单,因此我的项目表单永远无效(我假设它与不隐藏假设表单的事实相关联)


那么,我如何才能使这些表单不显示,并使我的项目表单有效呢?

如果您使用包含其他表单的表单,是因为您需要这样做,否则,请创建一个新表单。如果您坚持要使用,那么您必须使用attr管理第二个表单以使其隐藏。 还请记住,这些表单与现有实体相关,因此如果出现第二个表单,肯定意味着与表单相关的空项目至少有一个假设。清除集合应该可以工作。 我希望这对你有帮助。

。作为旁注,我发现为这类东西定义一个新的表单类型通常更容易。我知道尝试重用代码很有诱惑力,但这常常会导致混乱。