2015-04-08 66 views
0

我有一個html5表,它是從數據庫項目動態生成的,它包含鏈接,刪除圖標,鏈接標記爲<a href="xxxx" class="yyyy"></a>。我希望能夠點擊刪除圖標並知道,我想刪除哪個項目。我已經設置了與相關數據庫項目ID相同的鏈接類別,但在單擊鏈接後,我無法從控制器讀取該類別。有沒有在PHP Laravel中這樣做的方法?或者,也許你可以建議一種更好的方式來實現這一目標?這似乎是一種解決方法。Laravel PHP,獲得點擊鏈接類

回答

1

如果表上的每一行表示數據庫上的一行,那麼您的鏈接可能包含數據庫中的id。 例如,一個用戶表。

Row 1 => Link /users/delete/1 
Row 2 => Link /users/delete/2 
Row 3 => Link /users/delete/3 

通過這樣做,你可以確定知道哪一個被調用。 在你的路由文件,如果你不使用Route::resource(),你應該有這樣的事情:

Route::get('users/delete/{id}', '[email protected]'); 

而在你destroy方法:

public function destroy($id) 
{ 
    // your logic here 
} 
+0

呃,我想我已經提出了一個有點大錯的問題。我從控制器的數據庫中獲取數據,然後使用紅色數據創建視圖,然後從這些數據創建表格。 我找到了一個解決方案,而不是最好的,但它會工作。 我只是把表格放在一個表格裏,而不是鏈接和圖片,我使用單選按鈕和ID的值。然後,我將只使用Input :: get獲取選中的單選按鈕的值:) – Oskars

0

格式的鏈接爲: 如果例如你列出了所有使用foreach的項目:

@foreach($items as $item) 
<a href="{{URL::to('/item/delete/'.$item->id}}">{{$item->name}}</a> 
@endforeach 

裏面routes.php文件

Route::get('item/delete/{id}', '[email protected]'); 

ItemsController.php定義下列函數

public function deleteItem($id) { 
    $item = Item::get($id); 
    if(!$item) App::abort(404); 

    $item->delete(); 
    return Redirect::to('/'); 
} 

和我假設你有你的模型Item.php

class Item extends Eloquent { 
    protected $table = 'items'; 
} 

而你的物品表有ID和名稱列

+0

嗨,感謝您的建議,我會使用它。 但我遇到了路由文件的問題。它正確的在瀏覽器的鏈接部分(item/delete/correctId),但會導致一個錯誤:'RouteFollection.php中的NotFoundHttpException第145行:' 我相信,在路由文件中,它不會獲得{id}如預期 – Oskars

+0

編輯您的問題以包含整個'routes.php'或至少導致問題的部分。 –