我使用Laravel 4.1和工匠工具爲我們的網站開發一些cli腳本。 這些腳本將通過cron作業在後臺運行。Laravel工匠命令行
我遇到了一個錯誤/功能,並想知道是否有其他人遇到這個問題或知道如何克服這個問題。
說明:
在啓動文件夾下artisan.php我已經加了我的命令:
Artisan::add(new VinCommand);
Artisan::add(new DealersCommand);
Artisan::add(new ReportingCommand);
Artisan::add(new AutoInventoryCommand);
Artisan::add(new VastLeadsCommand);
Artisan::add(new SendInventoryAlertsCommand);
Artisan::add(new JumpstartCapCommand);
在應用程序 - >命令我有我的所有命令。 在AutoInventoryCommand.php我在__construct方法中運行截斷表,但我發現每個cli命令都調用truncate。
例如VinCommand:
php artisan command:vin_command
也運行AutoInventoryCommands __construct方法,這是造成總是被截斷的表。
是否將常規知識放在__construct方法中?
在其他一些命令中,我在__contruct方法中設置了私有靜態變量。這是不好的做法。我應該有一個被調用的_init()方法:
public function fire()
{
$this->_init();
}
這將設置我的變量。如果我沒有:
echo "Table Truncated \n";
在截斷方法中,我從來沒有抓到過。
所以這是一個bug /常識
我認爲發生這種情況,因爲當所有的__constructs被稱爲:
Artisan::add();
叫?