Symfony 1.4 embeddedforms和事件调度器
我有3个表单,一个是Symfony 1.4 embeddedforms和事件调度器,symfony-1.4,symfony-forms,Symfony 1.4,Symfony Forms,我有3个表单,一个是SalesForm,SalesItemForm和embeddesalesitemform 我使用embedRelation('SalesItems',EmbedSalesItemForm) 这些都很有效,当我查看销售时,我看到了嵌入其中的项目。那很好 不过,我想做的是检查是否有一个值出现在任何嵌入的表单值中,如果有,可能会挂接到事件调度器/侦听器以发送电子邮件 我可以通过以下方式获取表单值: public function processValues($values) {
SalesForm
,SalesItemForm
和embeddesalesitemform
我使用embedRelation('SalesItems',EmbedSalesItemForm)
这些都很有效,当我查看销售时,我看到了嵌入其中的项目。那很好
不过,我想做的是检查是否有一个值出现在任何嵌入的表单值中,如果有,可能会挂接到事件调度器/侦听器以发送电子邮件
我可以通过以下方式获取表单值:
public function processValues($values) {
var_dump($values);exit;
return parent::processValues($values);
}
这将返回:
array
'SalesItems' =>
array
0 =>
array
'id' => string '38' (length=2)
'quantity' => int 1
'sku' => string 'test1' (length=9)
'description' => string 'test1' (length=5)
'price' => float 9.99
'out_of_stock' => null
1 =>
array
'id' => string '39' (length=2)
'out_of_stock' => string 'on' (length=2)
'quantity' => int 1
'sku' => string '1234' (length=4)
'description' => string 'test' (length=4)
'price' => float 9.99
'id' => string '20' (length=2)
'first_name' => string 'Test' (length=4)
'last_name' => string 'Name' (length=4)
'email_address' => string 'test@test.com' (length=13)
理想情况下,我需要检查缺货
是否在上。这是一个复选框字段
非常感谢据我所知,您需要这样的东西:
public function processValues($values) {
if(isset($values)){
foreach($values as $value){
if($value['out_of_stock'] == 'on'){ // The checkbox is checked
// Send mail
}
}
}
return parent::processValues($values);
}