This is an old questions, but I was just looking for a quick answer and am not satisfied with any of these. What I would suggest to anyone with this same problem is create a new route. Worrying too much about crud compliance is silly, because there is no such thing over HTML; any solution is just shoe-horned to fit, whether it's a hidden form field or a get route.
So, in your routes, you likely have something like this:
Route::resource('users', 'UsersController');
The problem with this is that the only way to get to the "destroy" method is to sent a post request which has a hidden input named "_method" and a value of "DELETE".
Simply add under that line:
Route::get('users/{id}/destroy',['as'=>'users.delete','uses'=>'UsersController@destroy']);
Now you have a route you can access from HTML::linkRoute
, Route::url
, or whatever method you please.
For example:
{{ HTML::linkRoute( 'users.delete', 'Delete' , [ 'id' => $user->id ]) }}
EDIT
I want to clarify, though I have explained why it's somewhat silly to bend over backward to fit crud compliance, it is still true that your app will be more secure if changes are made only through POST requests.