Symfony表单:如何在不在我的请求中发布现有集合的情况下将新项目添加到集合中

时间:2016-11-21 17:24:04

标签: php symfony

我有一个与任意数量的更改日志实体具有一对多关系的实体。我希望能够将更改发布到父实体以及要添加到日志条目集合的日志条目。我想知道将新的日志条目和更改集一起发送到父实体的表单的最佳方法,而不会来回传递现有的日志条目,也不会覆盖现有的条目。

我尝试了各种选项,但无论我如何配置表单,当我提交单个日志条目以及我对父级的更改时,新的日志条目将覆盖第一个现有条目。

我目前的解决方法是在日志条目表单字段中设置mapped => false,并在控制器中将日志条目提交到其自己的表单以填充new LogEntry实体,然后调用父母的addLogEntry($logEntry)方法。如果我能处理父实体形式中的所有逻辑,我更愿意,但我还没有找到办法做到这一点。

有没有更完整的方法来实现这个目标?

以下是一个示例请求:


{"subscriptions":
    {
        "status": "2",
        "logEntries":[
            {"eventType":"cancel",
            "reason":"testing",
            "origin": "telephone",
            "notes":"test test test"}
        ]
    }
}

0 个答案:

没有答案