編集:どこが間違っていたのかを理解し、最後に答えを入れました
Laravel コマンドを作成しようとしていますが、Laravel 3 の「タスク」から大幅に変更されていることがわかります。しかし、実行できないようです。これらは私が取ったステップです:
php artisan コマンド:make Import
戻り値
コマンドが正常に作成されました
コマンドディレクトリにファイルが作成され、次のように「Hello World」を返すように少し変更しました。
use Illuminate\Console\Command;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Input\InputArgument;
class Import extends Command {
/**
* The console command name.
*
* @var string
*/
protected $name = 'command:import';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Command description.';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return void
*/
public function fire()
{
return 'Hello World';
}
/**
* Get the console command arguments.
*
* @return array
*/
protected function getArguments()
{
return array(
array('example', InputArgument::REQUIRED, 'An example argument.'),
);
}
/**
* Get the console command options.
*
* @return array
*/
protected function getOptions()
{
return array(
array('example', null, InputOption::VALUE_OPTIONAL, 'An example option.', null),
);
}
}
ただし、次のようにコマンドを実行しようとすると:
php 職人のインポート
次のエラーが表示されます。
[InvalidArgumentException] コマンド「インポート」が定義されていません。
ドキュメントではコマンドに「FooCommand」という名前が付けられているため、大文字の有無にかかわらず、「ImportCommand」という名前を付けてみましたが、うまくいきませんでした。
どんな助けでも大歓迎です。