我想把控制器中的变量传递给laravel中的模型。
在控制器中,
$withoutUser = True;
$post->update([
'status' => 'inactive'
]);
在模型中,
protected static function boot(): void
{
parent::boot();
static::updated(fn (Model $model) =>
// Need to access the $withoutUser variable from here?
);
}
调用$post-〉update()时是否有方法传递$withoutUser变量,或者在模型中调用static::updated方法时是否可以访问控制器中的$withoutUser变量?
谢谢
1条答案
按热度按时间n3h0vuf21#
你可以通过在post模型上创建一个属性来实现这一点。post类的完全相同的示例被发送到事件调度器。所以你可以像这样写你的代码:
然后在控制器中:
在 Boot 功能中:
不过,如果要将侦听器排队,则应该小心,因为在这种情况下,当从队列运行侦听器时,该属性将不会保留,因为它会从数据库获取post。