Creating and using Laravel 4 commands

前端 未结 4 880
孤独总比滥情好
孤独总比滥情好 2021-02-06 01:37

EDIT: Figured out where I was going wrong and placed an answer at the end

I\'m trying to create a Laravel Command, I can see it\'s changed considerably from \"tasks\" in

相关标签:
4条回答
  • 2021-02-06 02:00

    In newer Laravel versions there isn't an import command. You just have to do the following two thing:

    1. Register your command in app/start/artisan.php:

      Artisan::add(new Import);
      
    2. Run the command in Artisan:

      php artisan command:name Import
      
    0 讨论(0)
  • 2021-02-06 02:01

    try this.

    protected function getArguments()
    {
        return [];
    }
    
    protected function getOptions()
    {
        return [];
    } 
    

    also add this in /app/start/artisan.php

    Artisan::add(new ParseCommand);
    

    then Run Command on Root directory

    ./artisan command:import; 
    
    0 讨论(0)
  • 2021-02-06 02:05

    Actually figured this out. Further down the documentation it states that you must register your command in "app/start/artisan.php" using the following method:

    Artisan::add(new import);
    

    Also the name you give in your command class is significant as that's what you need to use to call it. So I should have actually been calling it like so:

    php artisan command:import
    

    One final thing. What the fire() returns is unimportant, to return strings you must echo them.

    0 讨论(0)
  • 2021-02-06 02:08

    there's a mis-understanding on Artisan commands because of the used wording.

    In your case you choose : 'command:import' as a name of one of your 'Import' commands.

    Think about it as an object, with methods.

    If "Import" has many commands:

    you can use as command name > protected $name = 'import:csv';

    another command would be > protected $name = 'import:txt';

    and > protected $name = 'import:contacts';

    so your commands with "Import" nature are better organised.

    and when you request , you see your commands organised as a single entity.

    If not,

    and you have only a single command then give your command a single clear name. protected $name = 'import';

    0 讨论(0)
提交回复
热议问题