web-dev-qa-db-fra.com

Champ d'adresse de migration

Je recherche actuellement un exemple pour migrer des données dans un champ d'adresse en Drupal 8 sans aucune chance pour l'instant.

Quelqu'un a-t-il un indice pour moi sur la façon de cartographier les champs?

J'ai essayé ce qui suit:

fichier my.migrate.yml:

'field_date_address/address_line1': date_tmp_address_address_line1
'field_date_address/locality': date_tmp_address_locality
'field_date_address/postal_code': date_tmp_address_postal_code

Rappeler:

$row->setSourceProperty('date_tmp_address_address_line1', 'Teststreet 18');
$row->setSourceProperty('date_tmp_address_locality', 'Test locallity');
$row->setSourceProperty('date_tmp_address_postal_code', '12345');
4
Sebastian

J'ai pu le résoudre :-)

Cela m'a aidé: https://www.drupal.org/node/2594631#comment-11322879

Il est important de mapper tous les sous-champs de champ d'adresse, sinon cela ne fonctionnera pas.

5
Sebastian

Je migre de json vers drupal 8, j'espère que cela vous aidera.

Dans le .yml j'appelle le champ sur une seule valeur:

id: my_id_migrate
label: My Label
migration_group: MyGroup
migration_dependencies: {}

source:
  plugin: json_source
  path: URL_TO_JSON_FILE
  headers:
    Accept: 'application/json'
  identifier: id
  identifierDepth: 0
  fields:
    - id
    - title
    - address

destination:
  plugin: entity:node

process:
  type:
    plugin: default_value
    default_value: my_node_type

  title: title

  field_geolocation : geolocation
  field_address : address

Et 'adresse' est un tableau de tous les sous-champs:

Source .json:

[
   {
      "id":1,
      "title":"Title 1",
      "address":{
         "address_line1":"adress 1",
         "address_line2":"",
         "postal_code":"11111",
         "locality":"City of lights",
         "country_code":"DE"
      },
   },
   {
      "id":2,
      "title":"Title 2",
      "address":{
         "address_line1":"adress 1 of number2",
         "address_line2":"",
         "postal_code":"11111",
         "locality":"City of lights",
         "country-code":"DE"
      },
   },
   {
      "id":3,
      "title":"Title 3",
      "address":{
         "address_line1":"adress 1 of number3",
         "address_line2":"",
         "postal_code":"11111",
         "locality":"City of lights",
         "country_code":"DE"
      },
   }
]

Fonctionne avec tous les sous-champs et fonctionne très bien pour tous les champs de drupal 8 qui ont des sous-champs (comme les champs de géolocalisation par exemple)

0
benj

Voici un exemple de travail avec un utilisateur profil migration (pas Drupal compte utilisateur).

Adress est un tableau de sous-champs. Vous pouvez archiver dans la base de données tous les sous-champs possibles car je ne les utilise pas tous (ex: field_profile_address_family_name)

Fichier .yml:

field_profile_address/country_code:
     plugin: default_value
     default_value: FR
   field_profile_address/langcode:
     plugin: default_value
     default_value: fr
   field_profile_address/address_line1: adresse1
   field_profile_address/address_line1: adresse2
   field_profile_address/locality: ville

   field_profile_address/postal_code: code_postal
0
Sébastien Gicquel

Pouvez-vous donner un exemple, un exemple que nous pouvons avoir pour la migration source en tant que SQL Actuellement, je suis confronté à un problème dans le champ d'adresse de migration de Drupal 7 à Drupal 8 Adresse champ

Il n'y a actuellement aucun chemin de migration pour le champ Adresse, toute suggestion sera utile

0
DEVARAJ JOHNSON