In my Drupal 4.7.5 site I have created a content type "example" with three fields: Start date, End date, and Body. When I inspect the database tables, I notice that the cck nodes have empty "body" and "teaser" fields in the node_revisions table. The value of the custom body that I had created is instead represented in the node_content_example table, in field field_body_value.

In Drupal 5.x, my custom content types do have a standard body field, the contents of which show up in the node_revisions table in the "body" and "teaser" fields.

  • What happens when I upgrade my 4.7 site to Drupal 5.0? I guess that my custom body field created with text.module, will not miraculously find its way into the standard "body" and "teaser" fields in the database?
  • What happens if I populate the "body" and "teaser" fields in Drupal 4.7, with PhpMyadmin, or nodeimport, and what happens to those fields if I upgrade?

    CCK 4.7.x-1.x-dev

Comments

karens’s picture

Status: Active » Fixed

CCK 4.7 content types use the title but not the body field of the node table. In 5.x content types no longer belong to CCK and they use the title and allow you an option to use the body. The body field is not a CCK field, it is a node field, so nothing you created as a CCK field is going to automatically populate the body field in either version. You can only populate the body field by creating some sort of custom module or by using PhpMyAdmin. I *believe* that if you do that in 4.7, your body data will survive in an upgrade because CCK will not be doing anything at all with it, but that is not tested and you should definitely have a good backup before trying it, plus I would try it in a test environment first just to be sure since this is uncharted territory.

kdebaas’s picture

Status: Fixed » Closed (fixed)

Thanks KarenS. I have tested it on my 4.7 site, which I then updated to Drupal 5.0 rc.1. Behaviour was as you described. I took the liberty of using your answer to create a handbook entry.