我的观点是
<a href="/agents/{{ $property->user_id }}/{{ $property->id }}/edit" class="btn-sm">Edit</a></td>
但是当我在$ property-> user_id 参数中输入1-50时,它会导致一个属性。
我的Route::get('/agents/{agent}/{id}/edit', 'AgentController@edit');
文件中有web.php
。
路由文件:
Route::get('/properties/', 'PropertyController@index');
Route::get('/properties/{property}', 'PropertyController@show');
Route::get('/agents/{agent}', 'AgentController@index');
Route::get('/agents/{agent}/{id}/edit', 'AgentController@edit');
Route::post('/agents/{agent}', 'AgentController@update')->name('agent.property.update');
这是我的控制器代码:
public function edit($id)
{
$property = Property::find($id);
return view('agents.edit', compact('property'));
}
我不了解Laravel中的这种行为,这不是我想要的,我只是想使路线正常工作。
答案 0 :(得分:2)
Laravel将agent_id和property_id都提供给控制器作为参数。您仅使用agent_id并将其作为属性ID。
public function edit($agent_id, $property_id)
{
$property = Property::find($property_id);
return view('agents.edit', compact('property'));
}
答案 1 :(得分:0)
根据您的路线文件,我认为您应该输入以下路线:
Route::get('/agents/{agent}/{id}/edit', 'AgentController@edit');
在此之上:
Route::get('/agents/{agent}', 'AgentController@index');