2013-10-08 152 views
1

我创建了一个完全自定义的视图,我希望此视图仅以editview格式显示某些字段,以便我可以更新记录。但是这个观点与普通的编辑视图不同。如何向此视图添加自定义元数据文件,以便我可以定义所需的表单和字段?该视图绑定到一个自定义按钮,目前只显示“作品”。到目前为止,这只是需要了解如何定义布局。如何在SugarCRM中为自定义视图创建布局

控制器:

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"; 
} 
} 

回答

2

旧,但仍可能帮助别人......

您可以:

  1. 里面工作显示功能。你在这里做的或回显的所有内容都将显示在主要的Sugar应用程序屏幕(导航栏,页脚等)中,因此它看起来很原生。

  2. 直接在控制器内工作并回应所有内容。

建立你的形式要编辑和有作为的行动中的一个功能,你可以使用bean-> save()方法为POST结果的字段。

<form name="whatever" method="POST" action="index.php?module=Contacts&action=yourcustomaction">

例如:

`$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的模板,我不熟悉。

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