沃梦达 / 编程问答 / php问题 / 正文

Laravel 调度调用控制器

Laravel Scheduling call controller(Laravel 调度调用控制器)

本文介绍了Laravel 调度调用控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 Laravel 任务调度,但是当我从控制器调用某些方法时遇到问题.

I work with Laravel Task Scheduling, but I have a problem when I call some method from my controller.

protected function schedule(Schedule $schedule)
{
    $schedule->call('UserController@deleteInactiveUsers')->everyMinute();
    //$schedule->call('AppHttpControllersUserController@deleteInactiveUsers')->everyMinute();
}

当我使用未注释的行调用时,出现此错误:

When I call with uncommented line i get this error:

[ReflectionException]
Class RecurrenceInvoiceController does not exist

然后我插入完全限定的命名空间路径,然后出现此错误:

and then I insert fully qualified namespace path and then I get this error:

[PDOException] SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known

还有

[ErrorException] PDO::__construct(): php_network_getaddresses: getaddrinfo failed: Name or service not known 

问题出在哪里?从 Laravel 任务调度中从控制器调用方法哪种方式是正确的.

Where is the problem? Which way is correct to call method from Controller from Laravel Task Scheduling.

推荐答案

几个月前我遇到了同样的问题,直到我能解决它.我使用 laravel 5.2,内核以这种方式调用我的驱动程序:

I stumbled months ago with the same problem, until I could fix it. I use laravel 5.2 and the kernel call my drivers this way:

$schedule->call('AppHttpControllersMyController@MyAction')->everyMinute();

我希望这会帮助其他人;)

I hope this will help someone else ;)

这篇关于Laravel 调度调用控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Laravel 调度调用控制器

基础教程推荐