在第 46 行调用 \sites\all\modules\community\entityreference\entityreference.install 中的未定义函数 entityreferen
Posted
技术标签:
【中文标题】在第 46 行调用 \\sites\\all\\modules\\community\\entityreference\\entityreference.install 中的未定义函数 entityreference_get_behavior_handlers()【英文标题】:Call to undefined function entityreference_get_behavior_handlers() in \sites\all\modules\community\entityreference\entityreference.install on line 46在第 46 行调用 \sites\all\modules\community\entityreference\entityreference.install 中的未定义函数 entityreference_get_behavior_handlers() 【发布时间】:2015-05-12 12:12:33 【问题描述】:我是 drupal 的新手,在这里我有一个项目要做。我遇到了一个错误。
致命错误:调用未定义的函数 entityreference_get_behavior_handlers() 在 \sites\all\modules\community\entityreference\entityreference.install 第 46 行
我检查了那个文件。
foreach (entityreference_get_behavior_handlers($field) as $handler)
$handler->schema_alter($schema, $field);
这些是行,尤其是错误来自以下函数调用。
entityreference_get_behavior_handlers($field)
我也尝试调试。这是我打印变量时产生的结果。
print_r($field);
Array
(
[translatable] => 0
[entity_types] => Array
(
)
[settings] => Array
(
[target_type] => user
[handler] => base
[handler_settings] => Array
(
[target_bundles] => Array
(
)
[sort] => Array
(
[type] => none
)
[referenceable_roles] => Array
(
[5] => 5
[2] => 0
[3] => 0
[4] => 0
[6] => 0
[7] => 0
[8] => 0
[9] => 0
[10] => 0
)
[referenceable_status] => Array
(
[active] => active
[blocked] => 0
)
[behaviors] => Array
(
[views-select-list] => Array
(
[status] => 0
)
)
)
)
[storage] => Array
(
[type] => field_sql_storage
[settings] => Array
(
)
[module] => field_sql_storage
[active] => 1
[details] => Array
(
[sql] => Array
(
[FIELD_LOAD_CURRENT] => Array
(
[field_data_field_web_designer] => Array
(
[target_id] => field_web_designer_target_id
)
)
[FIELD_LOAD_REVISION] => Array
(
[field_revision_field_web_designer] => Array
(
[target_id] => field_web_designer_target_id
)
)
)
)
)
[foreign keys] => Array
(
[node] => Array
(
[table] => node
[columns] => Array
(
[target_id] => nid
)
)
)
[indexes] => Array
(
[target_id] => Array
(
[0] => target_id
)
)
[id] => 14
[field_permissions] => Array
(
[type] => 0
)
[field_name] => field_web_designer
[type] => entityreference
[module] => entityreference
[active] => 0
[locked] => 0
[cardinality] => -1
[deleted] => 0
)
我相信这会更详细地帮助我。
提前致谢,
Vivek
【问题讨论】:
函数定义在哪里? 在\sites\all\modules\community\entityreference\entityreference.module
文件中定义。
【参考方案1】:
我找到了解决方案。
添加以下行。
// Invoke the behaviors to allow them to change the schema.
module_load_include('module', 'entityreference');
上面
foreach (entityreference_get_behavior_handlers($field) as $handler)
$handler->schema_alter($schema, $field);
在文件\sites\all\modules\community\entityreference\entityreference.module
感谢和问候,
Vivek
【讨论】:
以上是关于在第 46 行调用 \sites\all\modules\community\entityreference\entityreference.install 中的未定义函数 entityreferen的主要内容,如果未能解决你的问题,请参考以下文章
Spring Rest 服务调用在第 1 列的第 1 行返回错误:文档为空
在第 7 行调用 C:\wamp\www\Webs\client.php 中未定义的函数 sqlsrv_connect()
PHP 致命错误:在第 1 行 Laravel Artisan Tinker 的 eval() 代码中调用未定义函数 table()
致命错误:在第 5 行调用 C:\wamp\www\Test-CI\application\views\layout.php 中未定义的函数 base_url()