2015-03-17 11 views
9

Ich bin mir bewusst, dass Yii2-Advanced die Möglichkeit hat, Konsolenaufträge auszuführen (php yii controllername), aber ich frage mich, ob die grundlegende App die gleiche Fähigkeit hat? Ich bemerke eine console.php-Datei im config-Ordner, aber ich kann nicht scheinen, dass die Jobs ausgeführt werden.Können Sie Konsolenaufträge von yii2-basic ausführen?

Wenn es möglich ist, kann jemand ein Beispiel geben - was ist die Controller unterwegs (da ich es in Controller setzen, aber ich erhalte die Meldung ‚Fehler: Unbekannter Befehl test‘, wenn PHP yii Test versuchen)

Jede Hilfe wird geschätzt.

+0

Ich glaube, du meintest wirklich Konsolenbefehle, keine Konsolenaufträge. Ich habe ein Jobverzeichnis, das alle Hintergrundjobs enthält, die mit ResQue implementiert werden, und es hat eine andere Syntax, um sie auszuführen. – SenG

Antwort

9

Ja, die gleiche Funktionalität existiert auch in der Basisvorlage.

Allerdings ist es ein bisschen anders organisiert.

Standardmäßig befinden sich die Konsolen-Controller in Befehlen Ordner (Sie können das ändern, indem Sie diese Einstellung bearbeiten: 'controllerNamespace' => 'app\commands').

Die Konfiguration wird über die von Ihnen erwähnte config/console.php verwaltet.

Als Beispiel können Sie sehen, HelloController, die standardmäßig mit Vorlage kommt.

Weitere Informationen finden Sie in der entsprechenden offiziellen Dokumentation section.

Wie für Sie Fehler, genau überprüfen Controller Name und seine Aktion Namen, höchstwahrscheinlich das Problem ist da.

Aktualisierung: Stellen Sie sicher, dass Sie mindestens eine Aktion in diesem Controller haben, sonst wird der gleiche Fehler ("Unbekannter Befehl") angezeigt.

Sie können alle verfügbaren Befehle mit dem Befehl php yii auflisten.

+2

hast du meinen Tag gerettet. – ankitr

+2

Die Dokumente sind nutzlos. Sie erwähnen 'commands /' path oder 'controllerNamespace' überhaupt nicht. – Chloe

Verwandte Themen