首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何迁移已翻译的内容?

如何迁移已翻译的内容?
EN

Drupal用户
提问于 2020-08-19 22:34:02
回答 1查看 528关注 0票数 0

我正在从一个旧的Drupal 8站点迁移到新的Drupal 9站点:

我开发了一个从D8数据库获取数据的源插件:

我的迁移可以工作,但它不会迁移我的所有内容并得到以下错误:

Drupal\Core\Database\IntegrityConstraintViolationException: SQLSTATE23000:完整性约束违反: 1062重复条目'8a7e1ba8-9b75-4813-80d6-99104c82efa5‘用于键’node_field_uuid__value‘:插入{node} ("vid“、"type”、"uuid“、"langcode")值(:db_insert_placeholder_0、:db_insert_placeholder_1、:db_insert_placeholder_2、:db_insert_placeholder_3);

当我调试这个问题时,我发现有些已翻译的节点具有相同的nid、vid,只有langcode与下面的示例不同。

我将langcode作为id添加到我的源代码插件中,但是它没有帮助:

代码语言:javascript
运行
复制
  public function getIds() {
    return [
      'nid' => [
        'type' => 'integer',
        'alias' => 'n',
      ],
      'langcode' => [
        'type' => 'string',
        'alias' => 'n',
      ],
    ];
  }

如何迁移这些节点?

已使用的模块:迁移/迁移加上/迁移工具。

Drupal版本: 9.0.3

EN

回答 1

Drupal用户

发布于 2020-08-21 07:51:38

我发现有些翻译后的节点有相同的nid vid,只有langcode是不同的。

当使用翻译时,这是正常的。

然而,不正常和不正常的事情:

重复输入'8a7e1ba8-9b75-4813-80d6-99104c82efa5‘用于键’node_field__vid_value‘:插入{node} ("vid“、"type”、"uuid“、"langcode")

普遍唯一的IDentifier不可能是相同的,必须是唯一的。错误告诉您,节点表中有两个或多个节点,具有相同的UUID。

因此,要么D8中有两个或多个具有相同UUID的节点,要么您的节点已经迁移到D9,但是您的迁移没有看到并跳过它。

如果这两个节点都在D8上,当您发现哪些节点具有相同/重复的UUID时,可以通过duplicate并重新创建它。以防万一,检查另一个没有被删除,因为它有相同的UUID。

票数 0
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/296129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档