Php 如何在SugarCRM中为自定义视图创建布局

Php 如何在SugarCRM中为自定义视图创建布局,php,sugarcrm,Php,Sugarcrm,我创建了一个完全自定义的视图,我希望此视图仅以editview格式显示某些字段,以便更新记录。但是这个视图与普通的editview不同。如何将自定义元数据文件添加到此视图,以允许我定义所需的表单和字段?视图绑定到自定义按钮,当前仅显示“works”。这是迄今为止的工作只是需要了解如何定义布局 控制员: if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point'); class CustomCasesContro

我创建了一个完全自定义的视图,我希望此视图仅以editview格式显示某些字段,以便更新记录。但是这个视图与普通的editview不同。如何将自定义元数据文件添加到此视图,以允许我定义所需的表单和字段?视图绑定到自定义按钮,当前仅显示“works”。这是迄今为止的工作只是需要了解如何定义布局

控制员:

if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');

class CustomCasesController extends SugarController {

function action_resolve_Case() {
    $this->view = 'resolve_case';
}

}
观点:

if (!defined('sugarEntry') || !sugarEntry)
die('Not A Valid Entry Point');

require_once('include/MVC/View/SugarView.php');


class CasesViewresolve_case extends SugarView {

public function CasesViewresolve_case() {
    parent::SugarView();
}

function preDisplay() {

    parent::preDisplay();

}

public function display() {

   // include ('test.php');

    echo "works";
}
}

老了,但仍然可以帮助别人

你可以:

  • 在显示功能内部工作。您在这里所做的一切或回显都将显示在Sugar应用程序的主屏幕(导航栏、页脚等)中,因此它看起来是本地的

  • 直接在控制器内部工作,并将所有内容回传出来

  • 使用要编辑的字段构建表单,并将其作为控制器中的一个函数,在该函数中可以使用bean->save()方法生成POST结果

    例:

        `$contact = new Contact();
         $contact->retrieve("{$_REQUEST['contactId']}"); 
         //be sure to send the id in the button/link to the view
         $contact->first_name =$_POST['first_name'];
         $contact->last_name =$_POST['last_name'];
         .....
         $contact->save();`
    
    不是很优雅,但我知道的唯一其他选择是使用我不熟悉的smarty模板

    如果有人有更好的解决方案,请发布