Drupal 8 link fields store route name and parameters and options. Drupal 6 link fields store paths. Drupal 8 link fields, at this moment, does not have a working conversion between paths and route name/parameters.
There are proposed solutions in corebut this issue circumvents the complexities of that issue to allow users to begin testing migrations.
The menu link migration added the Route process plugin and an example of using it. We need to use this same circuitous way because the link field can store that. The challenge is to coax the entity load plugin to use the new CckLink process plugin which is based off the current Route process plugin.
User interface changes
Original report by @ultimike
Based on my not-so-good results of larger and more complex D6 databases, I figured that I'd start with something really simple - a fresh D6 site with limited content types and fields.
It seems like there is an issue with link fields, as while the data appears to be migrated (I can see it in the D8 database), there is still something odd going on as the view and edit pages for the nodes return WSOD. Could be related to https://drupal.org/node/2233901, as multiple migrations didn't run due to requirement issues.
I'm planning on re-running this test once https://drupal.org/node/2233901 is resolved, or after I add some new revisions to my D6 nodes.
Here's what I did:
- Enabled the "Content" and "Link" modules in D6.
- Added a new link field to the "story" content type in D6, added content.
- Enabled the "Link" module in D8 (disabled by default).
- Ran the migration (using https://drupal.org/comment/8615887#comment-8615887): nodes migrated, link field created, link content not migrated, with errors:
~/Sites/imp $ drush migrate-manifest mysql://imp@localhost/drupal6 manifest.yml</li> <li>Migration d6_cck_field_revision:page did not meet the requirements [error]</li> <li>Migration d6_cck_field_revision:story did not meet the requirements [error]</li> <li>Migration d6_cck_field_values:page did not meet the requirements [error]</li> <li>Migration d6_cck_field_values:story did not meet the requirements
- Based on migration_dependencies listed in the the .yml files for d6_cck_field_revision and d6_cck_field_values, I added the following migrations to the manifest:
- Ran the migration: nodes migrated, link field created, link content migrated (I can see it in the DB), but with errors:
~/Sites/imp $ drush migrate-manifest mysql://imp@localhost/drupal6 manifest.yml Migration d6_cck_field_revision:page did not meet the requirements [error]</li> Migration d6_cck_field_revision:story did not meet the requirements
- Then, when I go to the D8 site in a browser, both the "view" and "edit" pages for the newly migrated nodes have fatal errors (http://note.io/1lwAAUH and http://note.io/1dZePNj).
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 82,805 pass(es). View
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 82,755 pass(es). View