Puncte:2

cum să extinzi clasa de comandă Drush existentă

drapel fr

Poate cineva să-mi spună, vă rog, cum să extind clasa de comandă drush existentă.

Scriu un modul personalizat care oferă o entitate de conținut personalizat și a creat un plugin de generare de dezvoltare similar cu ContentDevelGenerate.

Funcționează conform așteptărilor pentru a genera conținut fals din interfața de utilizare . Aș dori să creez și o comandă drush pentru pluginul generator de dezvoltare. Similar cu DevelGenerateCommands metoda de conținut Aș dori să adaug o metodă suplimentară pentru a genera entitatea de conținut personalizată.

Clasa mea de comandă drush după cum urmează:

<?php

spațiu de nume Drupal\omdb_api\Commands;

utilizați Drupal\devel_generate\Commands\DevelGenerateCommands;

/**
 * Clasă pentru a crea comenzi omdb entitate API Drush.
 */
clasa OmdbApiEntityDevelGenerateCommands extinde DevelGenerateCommands {

  /**
   * Creați elemente de entitate API omdb prin comanda drush.
   *
   * @command devel-generate:omdb-api
   * @aliases dgen:omdb-api, devel-generate-omdb-api
   * @pluginId omdb_api_entity_devel_generate
   * @validate-module-enabled omdb_api
   *
   * @param int $num
   * Numărul de elemente de entitate API omdb de generat.
   * @param array $opțiuni
   * Gamă de opțiuni așa cum este descris mai jos.
   *
   * @option kill Ștergeți toate elementele entității api omdb înainte de a genera o nouă entitate api omdb.
   * @option feedback Un număr întreg care reprezintă intervalul pentru înregistrarea ratei de inserare.
   * @option skip-fields O listă de câmpuri delimitată prin virgulă de omis atunci când se generează valori aleatorii.
   * @option languages ​​O listă de coduri de limbă separate prin virgulă
   */
  funcția publică omdbApiEntities($num = 50, matrice $opțiuni = ['kill' => FALSE, 'feedback' => 1000]) {
    $this->generate();
  }

  /**
   * Wrapper pentru apelarea funcției de generare a instanțelor de plugin.
   */
  function public generate() {
    $instanta = $this->getPluginInstance();
    $instanță->generate($this->getParameters());
  }

}

OmdbApiEntityDevelGenerateCommands Dacă lipesc această metodă direct în DevelGenerateCommands clasa, comanda funcționează conform așteptărilor. Deci se pare că îmi lipsește ceva pentru a extinde DevelGenerateCommands clasă.

# drush.services.yml
Servicii:
  omdb_api.devel_generate_commands:
    clasa: \Drupal\omdb_api\Commands\OmdbApiEntityDevelGenerateCommands
    Etichete:
      - { nume: develgenerate.command }
Puncte:2
drapel fr

Pentru a remedia problema, trebuie să-mi actualizez drush.services.yml ca mai jos :

Servicii:
  omdb_api.devel_generate_commands:
    clasa: \Drupal\omdb_api\Commands\OmdbApiEntityDevelGenerateCommands
    argumente: ['@plugin.manager.develgenerate']
    Etichete:
      - { nume: drush.command }

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.