从Drupal 7实体访问数据

时间:2013-09-18 04:26:12

标签: drupal entity

我在Drupal 7中创建了许多实体。

一个例子是实体'structuralunit',它有多个包含'csu_company'的包。

鉴于给定csu_company对象的structuralunit_id为'3',我如何在函数中访问其名称?

理想情况下,答案如下:

$id = '3';

get_company_name($id) {

//stuff

return $name
};

支持信息:

查询:

$ id = array(3); $ entity = entity_load('structuralunit',$ id,array());

上面的代码在devel中显示了一个包含我需要的值的数组,但是我不确定是否应该以这种方式加载实体,或者如何从中提取数据(我也是不确定,为什么我需要加载一个(单数)项的数组作为参数?)。

最后的想法:

我最终还是要处理返回的值 - 查找不同类型(任务)的实体数量,将实体引用字段设置为(公司名称的)值,以及每个任务实体提取'x'字段并将它们放在一个数组中以循环。

我希望通过了解加载实体的方法,找到并提取数据,我可以围绕后续任务。

干杯!

1 个答案:

答案 0 :(得分:1)

一个重要的注意事项:entity_load的函数定义有一个数组作为第二个参数。

entity_load($entity_type, $ids = FALSE, $conditions = array(), $reset
= FALSE)

如果您正在寻找单个值(如您的示例所示),您仍需要将其作为数组传递。

您应该找到可用字符串的名称:

$entity[<OBJECTID>]->name