Score:2

วิธีขยายคลาสคำสั่ง drush ที่มีอยู่

ธง fr

ใครช่วยกรุณาแจ้งให้เราทราบวิธีการขยายคลาสคำสั่ง drush ที่มีอยู่

ฉันกำลังเขียนโมดูลที่กำหนดเองซึ่งมีเอนทิตีเนื้อหาที่กำหนดเองและสร้างปลั๊กอินสร้าง devel ที่คล้ายกับ ContentDevelสร้าง.

มันทำงานตามที่คาดไว้เพื่อสร้างเนื้อหาจำลองจาก UI ฉันต้องการสร้างคำสั่ง drush สำหรับปลั๊กอินตัวสร้าง devel ด้วย คล้ายกับ คำสั่ง DevelGenerate วิธีการเนื้อหา ฉันต้องการเพิ่มวิธีการเพิ่มเติมเพื่อสร้างเอนทิตีเนื้อหาที่กำหนดเองของฉัน

คลาสคำสั่ง drush ของฉันเป็นดังนี้:

<?php

เนมสเปซ Drupal\omdb_api\Commands;

ใช้ Drupal\devel_generate\Commands\DevelGenerateCommands;

/**
 * คลาสเพื่อสร้างคำสั่ง drush เอนทิตี omdb api
 */
คลาส OmdbApiEntityDevelGenerateCommands ขยาย DevelGenerateCommands {

  /**
   * สร้างรายการเอนทิตี omdb api โดยคำสั่ง drush
   *
   * @command devel-generate:omdb-api
   * @นามแฝง dgen:omdb-api, devel-generate-omdb-api
   * @pluginId omdb_api_entity_devel_generate
   * @validate-module-enabled omdb_api
   *
   * @param int $num
   * จำนวนรายการเอนทิตี omdb api ที่จะสร้าง
   * ตัวเลือก @param อาร์เรย์ $
   * อาร์เรย์ของตัวเลือกตามที่อธิบายไว้ด้านล่าง
   *
   * @option kill ลบรายการเอนทิตี omdb api ทั้งหมดก่อนที่จะสร้างเอนทิตี omdb api ใหม่
   * @option feedback จำนวนเต็มแสดงช่วงเวลาสำหรับการบันทึกอัตราการแทรก
   * @option ข้ามฟิลด์ รายการฟิลด์ที่คั่นด้วยเครื่องหมายจุลภาคที่จะละเว้นเมื่อสร้างค่าสุ่ม
   * @option language รายการรหัสภาษาที่คั่นด้วยเครื่องหมายจุลภาค
   */
  ฟังก์ชั่นสาธารณะ omdbApiEntities ($num = 50, array $options = ['kill' => FALSE, 'feedback' => 1,000]) {
    $this->generate();
  }

  /**
   * Wrapper สำหรับการเรียกใช้ฟังก์ชันสร้างอินสแตนซ์ของปลั๊กอิน
   */
  ฟังก์ชั่นสาธารณะสร้าง () {
    $instance = $this->getPluginInstance();
    $instance->generate($this->getParameters());
  }

}

OmdbApiEntityDevelGenerateCommands ถ้าฉันวางวิธีนี้โดยตรงใน คำสั่ง DevelGenerate class คำสั่งทำงานตามที่คาดไว้ ดูเหมือนว่าฉันขาดบางสิ่งที่จะขยาย คำสั่ง DevelGenerate ระดับ.

# drush.services.yml
บริการ:
  omdb_api.devel_generate_commands:
    คลาส: \Drupal\omdb_api\Commands\OmdbApiEntityDevelGenerateCommands
    แท็ก:
      - { ชื่อ: develgenerate.command }
Score:2
ธง fr

เพื่อแก้ไขปัญหา ฉันจำเป็นต้องอัปเดตของฉัน drush.services.yml ดังต่อไปนี้ :

บริการ:
  omdb_api.devel_generate_commands:
    คลาส: \Drupal\omdb_api\Commands\OmdbApiEntityDevelGenerateCommands
    อาร์กิวเมนต์: ['@plugin.manager.develgenerate']
    แท็ก:
      - { ชื่อ: drush.command }

โพสต์คำตอบ

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