2016-02-10 69 views
1

我想在Laravel 5.1中使用嵌套的URL訪問一個頁面,但我已經到了死衚衕。 我想在網址中間提供一個帶有參數的GET請求。準確地說,汽車/ {汽車} /編輯。 這是我的代碼:在Laravel 5.1中使用刀片訪問嵌套的URL

在routes文件

Route::resource('cars', 'carController'); 

在汽車控制器文件

class carController extends Controller 
{ 

    public function index(){ 

     $cars = Car::all(); 
     return view('carshome', compact('cars')); 
    } 

    public function edit($id){ 
     return 'Welcome: '.$id.'page'; 
    } 
} 

在carshome刀模板文件

@foreach ($cars as $car) 
<tr> 
    <td>{{ $car->name }}</td> 
    <td>{{ $car->type }}</td> 
    <td class="text-center"> 
     <a href = {{url('/cars',[$car->name])}}> 
      <i class="fi-clipboard-pencil"></i> 
     </a> 
     <a href = {{url('/cars',[$car->name])}}> 
      <i class="fi-x-circle"></i> 
     </a> 
    </td> 
</tr> 
@endforeach 

在汽車模型文件

class Car extends Model 
{ 
    protected $fillable = [ 
     'name', 'type' 
    ]; 
} 

幫助函數url可以將參數作爲url的一部分。我不知道如何才能創建自定義網址。我如何使用刀片訪問URL資源?

+1

TBH,使用'路線::資源('cars','carController');''會讓你免於使用'url(..)'。你可以使用'route('cars.edit',[$ car-> name])'這樣簡單。 PS。用[restful資源控制器上的文檔]確認它(https://laravel.com/docs/5.2/controllers#restful-resource-controllers)。 –

+1

正如@Tezla寫道的,但你仍然可以使用'url()',比如'url('cars',[$ car-> id,'edit'])''。 – Iamzozo

+0

哇,謝謝@Tezla,它的工作原理。我不知道在哪裏點擊標記您的評論是正確的。 – DBoonz

回答

1

這只是將問題標記爲已回答。作爲@Tezla共享: 在carshome刀模板文件,我可以使用:

route('cars.edit', [$car->name]) 

@lamzozo建議在carshome刀模板文件用另一種工作方式:

url('cars', [$car->name, 'edit'])