更新后问题.
完成出错的更新。几乎所有情况下,代码已更新但数据库未更新,或有多余的模块副本挡路,或缺少依赖。
按正确顺序运行更新
- 备份数据库。
- 运行
composer require drupal/dxpr_builder,如果锁定版本可带版本约束。 - 运行
drush updb -y(或访问/update.php). - 运行
drush cr. - 打开一个页面构建器页面并再次保存。
重要: 切勿卸载模块来更新。卸载会删除已保存的模板、资料和设置。
Composer 报错
- "Could not find a version of package drupal/dxpr_builder
matching your minimum-stability". 3.x 以测试版形式发布。在约束中允许它们:
composer require 'drupal/dxpr_builder:^3.0@beta'. - "Could not find a matching version of package
dxpr/dxpr_builder". drupal.org 上的包为
drupal/dxpr_builder。替换dxpr/dxpr_builder与drupal/dxpr_builder:composer.json,然后运行composer update drupal/dxpr_builder. - Composer 拒绝,因为该文件夹不受 Composer 管理。 手动上传了一个副本。删除
modules/contrib/dxpr_builder并再次运行 require 命令。 - "Disk quota exceeded" or "write failed". 重试前释放服务器磁盘空间。
数据库更新失败
- "Unable to install modules key due to missing modules key".
3.x 需要 Key 模块,更新 9020 会安装它。其代码缺失是因为模块未通过 Composer 安装。运行
composer require drupal/key,然后drush updb -y再次。 - 命名更新钩子失败。 运行
drush updb -vvv并在工单中附上完整报错。 - "module 'dxpr_builder_page' is missing its dependency module
field_group". DXPR Builder Drag and Drop Page 子模块需要 Field Group。运行
composer require drupal/field_group,然后drush en dxpr_builder_page -y.
更新后页面显示损坏
一些版本在以下期间批量转换旧标记,如 Owl 轮播和圆计数器 drush updb。失败的条目保持待定。
- 前往 DXPR Studio > DXPR Builder > Content items >
Migrations
(
/admin/dxpr_studio/dxpr_builder/migration-status). - 如果迁移显示 待定,点击 Run now,或 运行所有待定迁移。
- 检查 Reports > Recent log messages 批量跳过的条目。
Composer 拒绝 Drupal 核心大版本升级
DXPR Builder 3.x 支持 Drupal 10.2 及更高版本,以及 Drupal 11。
- 查看 DXPR Builder、DXPR Theme 和 DXPR Theme Helper 的发行说明,找到支持新大版本的版本。
- 运行 Upgrade Status 查看哪些包尚未就绪。
- 在以下位置锁定核心大版本
composer.json。无约束的composer require drupal/core-recommended可能意外拉取下一个大版本。
更新后编辑器损坏
遵循 编辑器不出现。部分更新后遗留问题是最常见的原因:待处理的数据库更新、过时的文件,以及基于旧版本构建的聚合缓存。
我正在从 Glazed Builder 迁移
DXPR Builder 3.x 不再转换存储内容中的 Glazed 类名。请先更新到最新的 2.x 版本并运行其数据库更新,然后更新到 3.x。参见 从 DXPR Builder 1.x 或 2.x 迁移。
确认修复
drush updb 报告无待定更新, drush pm:list --filter=dxpr 显示预期版本,重新保存的页面构建器页面在编辑器和访客端渲染一致。
接下来做什么?
更新 DXPR Builder 了解常规更新流程。