2015-04-08 70 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'或至少导致问题的部分。 –