我正在尝试实现路由模型绑定。
我有我的路线:
Route::get('/edit/{Word}', 'FlagWordsController@edit')->name('flagwords.edit');
我点击了foreach循环中的链接:
@foreach ($words as $word)
<tr>
<td>
<a class="atrium-button--text" href="{{ route('flagwords.edit', $word->id) }}">
<svg width="18" height="18" viewbox="0 0 18 18">
<use xlink:href="#icon-edit"></use></svg>
<span>Edit</span>
</a>
</td>
</tr>
@endforeach
这是我的控制者:
public function edit(Word $word)
{
dd($word);
return view('backend.flag-words.create', compact('word'));
}
但是我dd时的数据为空。
答案 0 :(得分:0)
您可以尝试执行显式绑定。要注册显式绑定,请使用路由器的ASTContext
方法为给定参数指定类。您应该在local_imports
类的启动方法中定义您的显式模型绑定:
model
接下来,定义一个包含Providers/RouteServiceProvider.php
参数的路由:
public function boot()
{
parent::boot();
Route::model('word', App\Word::class);
}
因此,例如,对{word}
的请求将从ID为1的数据库中注入Route::get('edit/{word}','FlagWordsController@edit');
实例。