gpt4 book ai didi

laravel - 使用 Laravel Mail::later 时缺少对象

转载 作者:行者123 更新时间:2023-12-04 21:52:27 24 4
gpt4 key购买 nike

我有这个代码:

$data = ['user'=>User::find(1)];
Mail::later(5, 'email.template', $data, function($message){
...
})

email.template有这个:
print_r($user)

当我收到电子邮件时, $user 的实例不是 User 对象。怎么会这样?这就像对象没有引用正确的上下文。但是当我使用 Mail::send 时它工作正常。这里有点困惑。

最佳答案

Eloquent 模型对于队列的工作来说太大了,通常有 64kb 的限制。

我建议您使用常规队列作业,将您的用户 ID 传递给它,然后从那里发送电子邮件:

$user_id = 1;

Queue::later(5, function () use ($user_id) {
$data = ['user' => User::find($user_id)];

Mail::send('email.template', $data, function ($message) {
// ......
});
});

关于laravel - 使用 Laravel Mail::later 时缺少对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21299341/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com