You hosts is your /, then you don't need a new group for your resources:
Route::group(array( 'prefix' => 'admin' , 'before' => 'admin-auth' ), function() {
Route::resource('hosts', 'UsersController' );
});
And you'll get something like this:
+--------+-----------------------------------------------------+-------------------------------------------+-------------------------------------------------+----------------------------+---------------+
| Domain | URI | Name | Action | Before Filters | After Filters |
+--------+-----------------------------------------------------+-------------------------------------------+-------------------------------------------------+----------------------------+---------------+
| | GET admin/hosts | admin.hosts.index | UsersController@index | admin-auth | |
| | GET admin/hosts/create | admin.hosts.create | UsersController@create | admin-auth | |
| | POST admin/hosts | admin.hosts.store | UsersController@store | admin-auth | |
| | GET admin/hosts/{hosts} | admin.hosts.show | UsersController@show | admin-auth | |
| | GET admin/hosts/{hosts}/edit | admin.hosts.edit | UsersController@edit | admin-auth | |
| | PUT admin/hosts/{hosts} | admin.hosts.update | UsersController@update | admin-auth | |
EDIT
Also, this is the right route:
Route::resource('hosts', 'UsersController' );
Not this one:
Route::resource('/hosts', 'UsersController' );