我使用 SugarCRM 的 Module Builder 创建了一个模块并进行了部署。稍后,我需要从已部署的模块中修改(添加/删除)字段和关系。如果我在 Module Builder 中进行更改并重新部署该模块,它将删除我为该模块创建的所有自定义代码,包括我为该模块创建的图标。
是否有一个工作流可以让我对模块代码进行版本化,以便多个开发人员可以重新分发和处理它?
我使用 SugarCRM 的 Module Builder 创建了一个模块并进行了部署。稍后,我需要从已部署的模块中修改(添加/删除)字段和关系。如果我在 Module Builder 中进行更改并重新部署该模块,它将删除我为该模块创建的所有自定义代码,包括我为该模块创建的图标。
是否有一个工作流可以让我对模块代码进行版本化,以便多个开发人员可以重新分发和处理它?
永远不会太迟!
使用自定义目录将挽救您的生命。
1) 根据:
自定义/modulebuilder/builds/MODULENAME/SugarModules/modules/MODULENAME/MODULENAME.php
在这里您可以编写自己的自定义类方法。
将整个“custom/modulebuilder/builds/MODULENAME/SugarModules/modules/MODULENAME/”添加到存储库
2)选择一个任意文件夹,在本例中为“zip”,位于:
自定义/modulebuilder/builds/MODULENAME/zip/
您也可以放置源模块构建器包并将“zip”文件夹添加到存储库。
现在,每次您想要进行工作室操作(例如添加/删除字段)时,一旦完成,您就可以重新导出项目并在每次要提交时覆盖存档文件。
自定义图标
对于您需要修改并放入存储库的图标,路径为“custom/modulebuilder/packages/MODULENAME/icons”
生产发布
很酷的是,如果您转到“MB > PACKAGE > Publish”,生成的模块将包含您所有的自定义。
部署模块后,建议通过工作室继续自定义,而不是在构建器中修改并重新部署。
如果您有一个团队,最好通过 GIT 或 SVN 管理您的包,并使用清单条目提供的功能来管理您的版本。您可以阅读此条目:https : //www.atcoresystems.com/resources/documentation/sugarcrm-manifest-development-guide 以及更具体的upgrade_manifest
部分