Laravel路由中复杂模型名称的依赖项注入
我使用的是Laravel 5.8,我有一个两个单词的模型,比如CurrencyNetwork,我想使用Laravel的神奇依赖注入,如下所示:Laravel路由中复杂模型名称的依赖项注入,laravel,dependency-injection,routes,Laravel,Dependency Injection,Routes,我使用的是Laravel 5.8,我有一个两个单词的模型,比如CurrencyNetwork,我想使用Laravel的神奇依赖注入,如下所示: Route::get('edit/{currency_networks}', ['as' => 'edit', 'uses' => 'NetworkController@edit']); 在我的控制器中,我使用: public function edit(CurrencyNetwork $network) { //some acti
Route::get('edit/{currency_networks}', ['as' => 'edit', 'uses' => 'NetworkController@edit']);
在我的控制器中,我使用:
public function edit(CurrencyNetwork $network)
{
//some action goes here
}
但模型实例并没有解析,我得到了一个空模型。
有没有办法让这一切顺利进行
编辑:
我可以通过在RouteServiceProvider中注册参数来解决这个问题,如下所示:
Route::model('currency_networks', CurrencyNetwork::class);
我想知道Laravel是否有办法自己绑定模型?您必须将方法类型提示参数名称与路由参数/段的名称匹配: “Laravel自动解析路由或控制器操作中定义的雄辩模型,其类型提示变量名称与路由段名称匹配。” 如果希望它是
$network
,请更改路由中的参数名称:
Route::get('edit/{network}', ...);
public function edit(CurrencyNetwork $network)
谢谢。我以前不太理解这段话。
Route::get('edit/{network}', ...);
public function edit(CurrencyNetwork $network)