是否可以从表单收集并映射两个字段到一个属性?
详细信息:
我的实体中有一个数组字段:
@ORM\Column(name="custom", type="simple_array")
admin可以为产品指定(多选)自定义选项 - 例如:
$product->setCustom( array('customText', 'customNumber') );
因此,用户的订单中应该有两个字段 - 文本和数字。然后我想保存它们:
$order->setCustomOptions(array(
'customText' => 'Foo',
'customNumber' => '100',
));
在order
实体中,只有数组字段类型而不是simple_array。
用户无法添加新选项,因此我认为收集字段类型不是一个不错的选择。 我也尝试使用数据转换器,但我认为它只能应用于一个字段。
告诉我它是否不清楚。我不需要一个完整的解决方案,但需要提示选择什么。
答案 0 :(得分:0)
最后,我在我的实体中创建了两个额外的字段(如DonCallisto建议的那样),而没有映射到数据库并在表单中呈现它们。然后,我使用了@ORM\PrePersist
和@ORM\PreUpdate
的setter来代替使用DataTransforem来设置自定义值。