【发布时间】:2018-09-15 02:58:58
【问题描述】:
我正在开发 Drupal 7,在此我使用 hook_update_N() 函数将一个字段列添加到我的数据库表中并运行 update.php 但我的 entity_get_info 没有将该字段更新到基表 SQL 列表中。我也清除了所有缓存,但没有用。
谁能给我建议一个解决方案?
【问题讨论】:
我正在开发 Drupal 7,在此我使用 hook_update_N() 函数将一个字段列添加到我的数据库表中并运行 update.php 但我的 entity_get_info 没有将该字段更新到基表 SQL 列表中。我也清除了所有缓存,但没有用。
谁能给我建议一个解决方案?
【问题讨论】:
所以你必须在 .install 文件中创建一个 schema_alter 以将你的新列添加到注册表中。
https://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_schema_alter/7.x
如果未创建字段,您还可以在将列架构版本减少到系统表后再次运行更新程序:
update system set schema_version = 700N-1 where name = 'your_module'
希望能给大家带来帮助
【讨论】: