我試圖創建工作來註冊用戶,並試圖按照Jeffrey的視頻,但看起來像dispatchfrom由於某種原因被刪除。這就是我想現在要做的:試圖在Job Laravel中獲取非對象的屬性
這是我的控制器:
public function PostSignUp(Request $request)
{
dispatch(new RegisterUser($request->all()));
return 'done';
}
這是我的工作:
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
class RegisterUser implements ShouldQueue
{
use InteractsWithQueue, Queueable, SerializesModels;
protected $request;
/**
* Create a new job instance.
* @param $request
* @return void
*/
public function __construct($request)
{
$this->request = $request;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$email = $this->request->email;
var_dump('I should register user with email:' . $email);
}
}
我也試圖把
只是$request
而不是$request->all()
但後來我得到
Serialization of 'Closure' is not allowed
而現在我得到Trying to get property of non-object error.
這是好的方式來傳遞整個請求的工作?我應該採取其他方式嗎?
是的這是做到了!現在,我以請求作爲對象 – Michael