Laravel DI 值为空
Posted
技术标签:
【中文标题】Laravel DI 值为空【英文标题】:Laravel DI value is empty 【发布时间】:2021-12-31 07:50:44 【问题描述】:这个有效
public function show($id)
$request = ClientRequest::find($id);
return view('show', compact('request'));
这个不行!!
dd($request)
表示属性为空
public function show(ClientRequest $request)
return view('show', compact('request'));
这是我的路线
Auth::routes();
Route::resource('pioneer', RequestController::class);
型号
class ClientRequest extends Model
use HasFactory;
protected $guarded = [];
谁知道问题出在哪里? google了一下,还是搞不清楚。
【问题讨论】:
你也可以更新你的路线吗? 使用路由模型绑定,URL段和函数参数必须匹配。因此,请确保您的路线定义中的段称为request
而不是其他名称。
确保路由变量与您的 show 方法中的变量完全相同:$request
我用Route::resource()
【参考方案1】:
正如我在评论中提到的,route model binding
的 URL 段和函数参数名称必须匹配。
您的 URL 段是 pioneer
,由您的 Resource
路由定义定义,因此您需要使用 pioneer
作为函数参数名称。
public function show(ClientRequest $pioneer)
return view('show', compact('pioneer'));
【讨论】:
欣赏!!现在可以了!!!谢谢!!以上是关于Laravel DI 值为空的主要内容,如果未能解决你的问题,请参考以下文章