I'm using migrate_d2d to migrate a Drupal 6 site to a Drupal 7 site.
I have created a new content type in Drupal 7, patterned on the content type in Drupal 6.
In Drupal 6, I am using the standard body text field for the text of articles.
Pre-migration, in Drupal 7 I deleted the default "Body" field (because I didn't want it to be a long text and summary field) and replaced it with a long text field with machine name field_body.
In the Drupal Migrate UI, if I edit the settings for the content type migration in question, under "Source fields" the "Body [body]" is checked by default, meaning it doesn't appear in the drop-down lists of possible sources:
If I uncheck the "Body [body]" field and "Apply Changes", it then becomes available as a source, I can map it into my new field_body field, and proceed with the migration without any issues:
However, when I next edit the migration of this content type in the Drupal Migrate UI, the "Body [body]" appears checked, the mapping for field_body and before I can migrate again I must again uncheck, save, and re-map.
Comment | File | Size | Author |
---|---|---|---|
body-available.png | 112.33 KB | reinvented | |
body-dnm-by-default.png | 70.06 KB | reinvented |
Comments
Comment #1
mikeryanThe field mapping editor is part of migrate, not migrate_d2d.
I'll look into this, probably next week.
Comment #2
mikeryanI see what the problem is - overriding a source-only mapping (the default DNM) isn't nearly as straightforward as overriding destination-based mappings. Not sure quite what to do yet - maybe save a special row to migrate_field_mappings to indicate the DNM is being overridden with nothing, or maybe when combining field mappings throw out the DNM if the source field is elsewhere mapped to a destination field.
Comment #4
mikeryanAdded a tweak to the field mapping merge so this doesn't happen.