5

我正在使用 SuiteCRM(Sugar CRM 6.x 社区​​版)并想创建一个自定义登录页面,成功登录后我想根据用户类型重定向

试图创建一些模块,但除了一些有用的链接之外没有明确的文档,以下是我的查询:

  • 我们可以在不使用模块构建器的情况下创建自定义模块吗?如果可以,那么步骤是什么?
  • 我们是否需要在 /module 文件夹或 /custom/module 文件夹或两个地方都写模块?

任何链接也很感激。

4

1 回答 1

11

您可以通过修改“modules/Users/login.tpl”来创建自定义登录页面

可以通过 Modulebuilder 或手动创建自定义模块。

手动创建模块时,使用正确的名称很重要。最简单的方法是文件夹、表和模块的复数名称和类的单数名称。

手动步骤:

您需要模块中的文件夹/命名为您的模块(即 CAAccounts)

在此文件夹中,您需要一个名为类的文件(即 CAccount.php),其内容如下:

require_once('data/SugarBean.php');
require_once('include/utils.php');

class CAccount extends SugarBean{

    var $table_name = 'caccounts';
    var $object_name = 'CAccount';
    var $module_dir = 'CAccounts';
    var $new_schema = true;
    var $name;

    var $created_by;
    var $id;
    var $deleted;
    var $date_entered;        
    var $date_modified;        
    var $modified_user_id;  
    var $modified_by_name;

    function CAccount (){
        parent::SugarBean();
    }

    function get_summary_text(){
        return $this->name;
    }

    function bean_implements($interface)
    {
        switch($interface)
        {
            case 'ACL':return true;
        }

        return false;
    }

}

在此文件夹中,您需要一个 vardefs.php 文件:

$dictionary['CAccount'] = array(
    'table'=>'caccounts',
    'audited'=>false,
    'fields'=>array (
          //Your fielddefs here     
     )
);  

require_once('include/SugarObjects/VardefManager.php');
VardefManager::createVardef('CAccounts','CAccount', array('basic'));

对于语言和元数据文件夹,请查看任何其他模块。

接下来是“custom/Extension/application/Ext/Include/CAccounts.include.php”中的文件

$moduleList[] = 'CAccounts'; 
$beanList['CAccounts'] = 'CAccount';        
$beanFiles['CAccount'] = 'modules/CAccounts/CAccount.php';

模块名称的语言文件必须在“custom/Extension/application/Ext/Language/”中

$app_list_strings['moduleList']['CAccounts'] = 'Custom Accounts';

要在选项卡中显示模块,您需要使用“重建和修复”,然后在管理菜单中使用“显示模块和子面板”选项。

对于自定义模块,您不需要“custom/”文件夹结构。如果提供了文件,糖将使用那里的文件,但在自定义模块中通常不需要。

有关模块框架的指南可以在 sugarcrm 支持网站上找到:http: //support.sugarcrm.com/02_Documentation/04_Sugar_Developer/Sugar_Developer_Guide_6.5/03_Module_Framework

于 2014-03-21T09:36:05.510 回答