功能如何管理内容类型字段更改?

时间:2012-03-08 12:31:27

标签: drupal-7

我很乐意更改内容类型字段(从节点引用到文本字段),这会在合并重新创建的功能时导致错误。错误是

FieldException: Cannot change an existing field's type. in field_update_field() (line 234 of /var/www/htdocs/modulesfieldfield.crud.inc)

目前,这只会影响合并回到开发人员的工作区,并且暂存环境是来自GIT的干净构建,因此不受影响。但是,它在生产时定义更新过程方面提出了一个早期的标志。

在生产中,我认为这将是管理该内容类型的每个实例的导出,删除内容类型,安装重新创建的功能,将导出的数据迁移到重构的内容类型然后应用任何内容可以为该变化定义的测试。

建议的最佳实践流程是什么,即一开始就要遵循的标准?

非常感谢提前

1 个答案:

答案 0 :(得分:0)

最好的方法是使用版本标记您的功能。

  • 第一个版本:您的旧字段及其数据
  • 第二个版本:您的旧字段定义和新字段定义。 在此版本中,您可以在hook_update_N()中迁移旧字段中包含的数据。
  • 第三版:只需删除旧字段定义

我希望按照您的预期回答您的问题