Я пытаюсь вставить данные из таблицы SQL в содержимое абзаца Drupal 8. Foreach не поддерживает мою потребность.
Мой код:
public function psdloadData() {
$tx = \Drupal::database()->startTransaction();
try
{
$database = \Drupal::database();
$result = $database->query("SELECT * FROM mytable");//this is my table
$records = $result->fetchAll();
foreach($records as $key => $record)
{
// Create single new paragraph
$paragraph = Paragraph::create([
'type' => 'ptype1',
'field_pid'=> array (
"value"=> $record->get('field_progid')->value,
"format" => "full_html"
),
]);
$paragraph->save();
}
$node = Node::create([
'type' => 'maintype',
'title' => 'Availability',
]);
$node -> field_p_body =
array(
'target_id' => $paragraph->id(),
'target_revision_id' => $paragraph->getRevisionId(),
);
$node->enforceIsNew();
$node->save();
}
catch (Exception $e)
{
$tx->rollBack();
// log/report failure
}
}
Данные моей таблицы выглядят так:
Мой тип абзаца:
title: Availability
prog id: 121
age group: pre-school
School age
prog id: 122
age group: Infant
pre-school
School age
Мой модуль загрузки не поддерживает это. Может кто-нибудь помочь мне достичь этого результата?