【发布时间】:2019-12-29 17:27:44
【问题描述】:
我正在尝试在队列连接设置为sync 但现在设置为database 时更新队列作业中的数据库行。
编辑:修复序列化问题,更新队列中的数据库问题仍然存在。
public function handle()
{
$id = $this->settings->id;
$server = $this->settings->server;
$number = $this->settings->number;
$api_script = storage_path('script.py');
$delay = 5;
//Determine Delay
//Process Script Here
//Check If Script Successful
DB::table('orders')->where('order_id', $this->settings->order_id)->update(['status' => "Finalising..."]);
ProcessEmails::dispatch($this->settings)->delay(now()->addMinutes($delay));
// echo $process->getOutput();
}
以上是我要执行的作业,更新数据库命令同步工作,但在连接设置为数据库时不工作。
感谢您的帮助!
【问题讨论】:
-
此问题仅通过更改队列驱动程序出现在同一环境中,还是同一应用程序一个本地和一个生产?
-
@dparoli 相同的环境,仅更改 .env 变量。
-
看看这里,即使没有链接到队列,你的问题似乎也一样:stackoverflow.com/questions/45266254/… 和这里:laravel.com/docs/5.8/deployment#optimizing-route-loading 它写了关于序列化的地方。
-
@dparoli 谢谢你,我实际上已经通过将返回视图移动到控制器来对路由问题进行排序。队列/数据库更新问题仍然存在。
-
很高兴能提供帮助。请尝试使用
\DB::table('orders')...
标签: laravel