这是我的控制者:
class UserPostController extends \BaseController {
public function index($user_id)
{
$posts = Post::with('user')->find($user_id)->paginate(20);
return View::make('users.posts.index', compact('posts'));
}
}
这些是我的路线:
Route::resource('posts', 'PostsController');
Route::controller('users', 'UsersController');
Route::resource('users.posts', 'UserPostController');
这是我的观点:
{{ link_to_action('UserPostController@index', 'Show posts', array( Auth::user()->id )) }}
我在收到错误后写了一个composer dump-autoload,但它仍然不起作用。
Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException
Controller method not found.
答案 0 :(得分:0)
Route::resource('users.posts', 'UserPostController');
Route::resource('posts', 'PostsController');
Route::controller('users', 'UsersController');
Laravel获取与路径匹配的第一项,因此您需要在用户之前放置users.posts的路由。