我习惯在 drupal 7 中使用 db_select 但现在它在 drupal 8 中已弃用
因此,如果我需要创建一个查询来列出来自的所有用户users_field_data
表,我该怎么办?
我还用吗db_select
or db_query
即使它们是已弃用的函数?或者创建一个新的控制器来扩展“Select class
“并提出我的疑问?
取决于您想要实现的目标。
使用存储对象
如果您想对用户进行简单查询,那么您应该使用存储对象的 loadByProperties
$users = \Drupal::entityTypeManager()->getStorage('user')->loadByProperties([
'name' => 'bar'
]);
使用实体查询和 loadMultiple
如果您需要带有排序、范围、分页器和 OR/AND 条件组的更复杂的查询,您应该使用实体查询
$ids = \Drupal::entityQuery('user')->condition('name', 'foo')->execute();
$users = User::loadMultiple($ids);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)