2

我正在编写逻辑挂钩,我需要通过使用其他模块元素来更新 1 个模块字段。

<?php
class logic_hooks_class {

function after_save_method($bean, $event, $arguments) {

    if (!isset($bean->ignore_update_c)||$bean->ignore_update_c === false {

     //here I need to get module's reservations element: amount_reserved 
     //should I load relationship like $bean->load_relationship('reservations'); ??
     //need to set total_reserved = amount_reserved;
     //by the way amount_reserved might have several values for one reserved

          $bean->goods = $bean->amount-$bean->total_reserved;
          $bean->ignore_update_c = true;
          $bean->save();
  }
 }
}
?>
4

1 回答 1

1

您可以像这样加载关系的bean:

$bean->load_relationship('reservations');
$reservations = $bean->reservations->getBeans();

现在可以循环$reservationsandfetch并总结想要的值。

只是为了澄清如何load_relationship工作。for 的参数load_relationship应该是指向关系名称的链接 vardef。逻辑名称是模块的复数名称,如预订。

于 2015-01-10T11:14:31.680 回答