获取SugarCRM豆的收集

Ala*_*orm 6 php sugarcrm

从编程上讲,有没有办法获取arraySugarCRM bean对象的集合?

也就是说,假设我想要获取包含Bank其名称中的单词的多个帐户行.使用原始SQL,我会做这样的事情

SELECT * 
FROM Accounts 
WHERE name LIKE '%Associates%`;
Run Code Online (Sandbox Code Playgroud)

有没有办法使用SugarCRM ORM来做类似的事情?如果没有,SugarCRM程序员通常如何处理这种情况?我意识到我可以通过从数据库中选择ID列表来一起破解某些东西

$db         = DBManagerFactory::getInstance();        
$result     = $db->query('SELECT id FROM Accounts where name LIKE "%Banking%"');
$accounts   = array();
while($row = $db->fetchRow($result))
{            
    $accounts[] = BeanFactory::getBean('Accounts', $row['id']);
}
Run Code Online (Sandbox Code Playgroud)

但在大多数ORM中,这被认为是低效的,而且是不好的做法.有没有更好的办法?

(完全准备好答案是"不,没有办法做到这一点."我是平台的新手并试图找到我的方位)

小智 7

而是使用

$bean = BeanFactory::getBean('Accounts');
$account_list = $bean->get_full_list("", "accounts.name like '%Associates%'");
Run Code Online (Sandbox Code Playgroud)

因为get_list将为您提供list_max_entries_per_page所定义的内容.


egg*_*egg 6

以下是使用标准SugarBean与SQL的不同方法的一个很好的资源:这里

对于你的例子:

$bean = BeanFactory::getBean('Accounts');
$account_list = $bean->get_list("", "accounts.name like '%Associates%'");
Run Code Online (Sandbox Code Playgroud)