SugarCRM v6.5 $bean->save 停止工作后的任何内容
SugarCRM v6.5 anything after $bean->save stops working
我有这个代码:
function saveField($field, $id, $module, $value)
{
$bean = BeanFactory::getBean($module, $id);
if (is_object($bean) && $bean->id != "") {
if ($bean->field_defs[$field]['type'] == "multienum") {
$bean->$field = encodeMultienumValue($value);
}else if ($bean->field_defs[$field]['type'] == "relate" || $bean->field_defs[$field]['type'] == 'parent'){
$save_field = $bean->field_defs[$field]['id_name'];
$bean->$save_field = $value;
if ($bean->field_defs[$field]['type'] == 'parent') {
$bean->parent_type = $_REQUEST['parent_type'];
$bean->fill_in_additional_parent_fields(); // get up to date parent info as need it to display name
}
}else{
$bean->$field = $value;
}
//return here will work
$bean->save(); //this works
//nothing works here
return getDisplayValue($bean, $field);
} else {
return false;
}
}
这里的问题是
下的任何东西
$bean->save()
将不起作用。但我知道随着值的更新,保存正在工作。那么我该如何调试这个问题呢?
我已经试过了:
return var_dump($bean->save());
return print_r($bean->save());
if($bean->save()){
return "1";
}else{
return "2";
}
上面的 none 工作了,但我的 return 仍然一无所获。
可能有诸如 after_save 逻辑挂钩之类的东西正在执行并导致致命错误或退出。
尝试使用 xdebug,它应该允许您进一步调查失败的保存方法。
我有这个代码:
function saveField($field, $id, $module, $value)
{
$bean = BeanFactory::getBean($module, $id);
if (is_object($bean) && $bean->id != "") {
if ($bean->field_defs[$field]['type'] == "multienum") {
$bean->$field = encodeMultienumValue($value);
}else if ($bean->field_defs[$field]['type'] == "relate" || $bean->field_defs[$field]['type'] == 'parent'){
$save_field = $bean->field_defs[$field]['id_name'];
$bean->$save_field = $value;
if ($bean->field_defs[$field]['type'] == 'parent') {
$bean->parent_type = $_REQUEST['parent_type'];
$bean->fill_in_additional_parent_fields(); // get up to date parent info as need it to display name
}
}else{
$bean->$field = $value;
}
//return here will work
$bean->save(); //this works
//nothing works here
return getDisplayValue($bean, $field);
} else {
return false;
}
}
这里的问题是
下的任何东西$bean->save()
将不起作用。但我知道随着值的更新,保存正在工作。那么我该如何调试这个问题呢?
我已经试过了:
return var_dump($bean->save());
return print_r($bean->save());
if($bean->save()){
return "1";
}else{
return "2";
}
上面的 none 工作了,但我的 return 仍然一无所获。
可能有诸如 after_save 逻辑挂钩之类的东西正在执行并导致致命错误或退出。
尝试使用 xdebug,它应该允许您进一步调查失败的保存方法。