2016-07-08 4 views
1

I 3400 Zeilen von phpMyAdmin Export auf einen benutzerdefinierten Inhaltstyp über Drupal 8.Drupal 8.1.1 - Migration 3400 INSERT (von SQL), um benutzerdefinierte Inhaltstyp

ich migrieren müssen versucht, mit Migration Module zu tun, sondern, für Beispiel Migrate Plus und Migrate Tools sind nicht kompatibel mit meiner Version von Drupal (8.1.1)

Ich wollte Datensätze mit einem PHP-Skript importieren.

Ich habe viele Dinge ausprobiert, aber in vielen Fällen habe ich "undefined function" (unter Verwendung von zum Beispiel entity_create) und mehr Beweise, die ich getan habe, gesagt.

Beispiel 1:

$new_page_values = array(); 
$new_page_values['type'] = 'my_content_type'; 
$new_page_values['title'] = "Titulo"; 
$new_page_values['path'] = "Path"; 

$new_page = entity_create('node', $new_page_values); 
$new_page->save(); 

Beispiel 2

$language = \Drupal::languageManager()->getCurrentLanguage()->getId(); 
$node = \Drupal\node\Entity\Node::create(array(
      'type' => 'article', 
      'title' => 'The title', 
      'langcode' => $language, 
      'uid' => 1, 
      'status' => 1, 
      'body' => array('The body text'), 
      'field_date' => array("2000-01-30"), 
      //'field_fields' => array('Custom values'), // Add your custon field values like this 
    )); 
$node->save(); 

Beispiel 3:

db_insert('example_entity') 
    ->fields(array(
     'type' => $entity->getEntityTypeId(), 
     'id' => $entity->id(), 
     'created' => REQUEST_TIME, 
     'updated' => REQUEST_TIME, 
    )) 
    ->execute(); 

Ich versuche, eine Php-Datei von der Serverkonsole (php update laufen .php)

Dank a nd Grüße.

+0

Bitte geben Sie eine [MCVE] (https://stackoverflow.com/help/mcve) an. – oldtechaa

+0

Beispiele sind auf Frage veröffentlicht. – Javier

Antwort

0

Javier, die Migration in D8 ist immer noch ein WIP.

Mein Rat:

  • installieren Sie die neueste Drupal 8.1,
  • installieren Sie die neuesten Module für migrate_tools, migrate_plus, migrate_source_csv und migrate_source_json. Vorzugsweise die neuesten Beta-Versionen.
  • Ändern Sie Ihre phpAdmin-Ausgabe in eine CSV-Datei.

Vielleicht müssen Sie Ihre benutzerdefinierte Entität erstellen. Migrate_tools hat 2 Beispiele für die Migration. Es enthält auch ein CSV-Beispiel. Der Migrationsprozess sollte Ihre Daten nahtlos importieren.

Tipps: YAML-Dateien sind extrem empfindlich für Grammatics wie Leerzeichen. Und Sie sollten keine externe/Migrationsdatenbank angeben müssen. Aber denken Sie daran, was jemals gestern gearbeitet hat, kann heute anders sein. Ich arbeite an meiner Migration für die letzten 6 Monate.

Migrationsprozess ist eine völlig andere Geschichte als die D7.

Bearbeitet: Drush 8 installieren. Verwenden Sie Composer für den einfachen Weg. Drush wird benötigt, um das Migrationsskript über die Befehlszeile auszuführen, das Manifest ist veraltet.

Bearbeitet 2: IMO die beste Erklärung für und warum mit der D8-Migration. Schauen Sie sich diese Seite an https://blog.liip.ch/archive/2016/05/04/using-the-new-drupal-8-migration-api-module.html. Dein Wunsch, dein eigenes PHP zu verwenden, scheint hauptsächlich, weil du anscheinend nicht die Migration von D8 verwenden kannst?