Score:0

การย้ายเขตข้อมูลหนึ่งไปยังหลายแถว

ธง kn

ฉันกำลังพยายามย้ายรหัส html เป็นหลายย่อหน้าที่จำเป็นต้องเชื่อมโยงเข้าด้วยกันความคิดของฉันคือการให้พวกเขาเชื่อมโยง ID ของฉันที่มาจากชุดข้อมูล โดยอาจใช้ ID นั้นเป็นแหล่งที่สอง ขณะนี้รหัสของฉันสร้างหลายย่อหน้า แต่ไม่มีการเชื่อมโยงระหว่างพวกเขา ข้อมูลมาจาก csv และฉันใช้ Drupal 9

TLDR: วิธีแมปหนึ่งคอลัมน์จากไฟล์ csv เป็นหลายแถวในตารางการแมป

รหัส yml (ข้อมูลคือรหัส html)

กระบวนการ:
  พิมพ์:
    ปลั๊กอิน: default_value
    default_value: ลิงก์
  รหัสภาษา: kieli
  หัวเรื่อง : นิมิ
  default_langcode:
    ปลั๊กอิน: default_value
    default_value: จริง
  field_multi_paragraphs:
    - ปลั๊กอิน: paragraph_generate
      entity_type: ย่อหน้า
      ที่มา: Data #useless
      value_key: รหัส
      ค่า:
        field_data: ข้อมูล
ปลายทาง:
  ปลั๊กอิน: 'entity_reference_revisions:paragraph'

รหัสที่สร้างย่อหน้า

/**
 *
 * @MigrateProcessPlugin(
 * id = "paragraph_generate"
 * )
 */
คลาส ParagraphGenerate ขยาย EntityGenerate {

  การแปลงฟังก์ชันสาธารณะ ($value, MigrateExecutableInterface $migrateExecutable, แถว $row, $destinationProperty) {
    $this->row = $แถว;
    $this->migrateExecutable = $migrateExecutable;

    $result = $this->generateEntity($value);
    ส่งคืนผลลัพธ์ $;
  }

  ฟังก์ชันที่มีการป้องกัน createEntity($value) {
    $dom = DOMDocument ใหม่ ();

    $dom->loadHTML('<?xml encoding="utf-8" ?>' . $value);
    $html = $dom->getElementsByTagName('body')->item(0);
    $returnArray= [];
    foreach ($html->childNodes เป็น $child) {
      ถ้า ($child->tagName === 'p') {
        $paragraph = ย่อหน้า::create([
          'ประเภท' => 'ข้อความ',
          'field_text' => อาร์เรย์(
            "value" => $child->nodeValue,
            "รูปแบบ" => "ธรรมดา"
          ),
        ]);
        $วรรค->บันทึก();
        $returnArray[] = ['target_id' => $paragraph->id(), 'target_revision_id' => $paragraph->getRevisionId()];
      }
    }

    คืนค่าว่าง ($ returnArray) ? NULL : $returnArray;
  }

}

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา