我有3个表单,一个是SalesForm
,SalesItemForm
和EmbedSalesItemForm
我使用SalesItemForm
SalesForm
放入我的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)
理想情况下,我需要检查out_of_stock
是否为on
。这是一个复选框字段
非常感谢
答案 0 :(得分:0)
据我了解,你需要这样的东西:
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);
}