作业队列中的跟踪标签没有显示我期望的标签。作业在更改为类后不处理。
我的工作示例类是:
class EmailUser implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
/**
* The user instance.
*
* @var AppUser
*/
public $user;
/**
* Create a new job instance.
*
* @param AppUser $user
* @return void
*/
public function __construct(User $user)
{
$this->user = $user;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
Mail::to('fesher@example.com')->send(new ApplicationReceivedEmail());
}
/**
* Get the tags that should be assigned to the job.
*
* @return array
*/
public function tags()
{
return ['email', 'user:'.$this->user];
}
}
现在,在我手动标记工作类电子邮件之前,电子邮件已正常发送并且一切正常。添加标签方法杀死过程,电子邮件不再正常发送。
我从网站上的例子开始 https://laravel.com/docs/5.5/horizon#tags
有人可以帮忙吗?谢谢
您正在尝试将 Eloquent 集合连接到标记字符串,其中它应该是类似于 name
或 ID
的东西。
改变:
return ['email', 'user:'.$this->user];
自:
return ['email', 'user:'.$this->user->id];