【发布时间】:2018-12-09 20:48:56
【问题描述】:
我正在向工作类传递一个请求,以发送电子邮件以获取联系表。问题是我无法直接访问该属性。
我将构造函数中的$request设置为$this->request = $request;
在handle() 方法中,我这样做:
\Log::info('job-contact-request', ['request' => $this->request]);
日志吐出:
[2018-06-30 14:07:34] local.INFO: request {"request":"[object] (App\Events\ContactRequestValidated: {\"request\":{\"client_name\": \"Daniel\",\"client_email\":\"email@email.com\",\"client_phone\":\"1234567891\",\"client_text\":\"blargle carble darble zarble\"}, \"socket\":null})"}
这表明 client_email 已设置。但是当我尝试访问$this->request->client_email 时,我得到:
[2018-06-30 14:15:30] local.ERROR: 未定义属性:App\Events\ContactRequestValidated::$client_email {"exception":"[object] (ErrorException(code: 0): Undefined property : App\Events\ContactRequestValidated::$client_email at /var/www/site/laravel/app/Jobs/SendContactRequestEmail.php:36) [堆栈跟踪]
【问题讨论】:
-
可以分享一下代码吗?
-
@Marcus 我在下面的回答中发现了这个问题。
标签: laravel jobs laravel-events laravel-jobs