【发布时间】:2023-03-15 01:56:01
【问题描述】:
是否有任何简单的方法可以在请求中检索路由绑定模型?
我想更新模型,但在此之前,我想使用 Requests authorize() 方法执行一些权限检查。但我只希望模型的所有者能够更新它。
在控制器中,我会简单地做这样的事情:
public function update(Request $request, Booking $booking)
{
if($booking->owner->user_id === Auth::user()->user_id)
{
// Continue to update
}
}
但我希望在请求中执行此操作,而不是在控制器中。如果我这样做:
dd(Illuminate\Http\Request::all());
它只给了我标量形式的属性(例如_method 等等,而不是模型)。
问题
如果我将模型绑定到路由,如何从请求中检索该模型?
非常感谢。
【问题讨论】:
-
作为这个问题的更新:你可能想查看 Laravel 的 authorization 组件。看起来非常适合您的需求!