带参数的Laravel路由导致404

带参数的Laravel路由导致404

问题描述:

I have a route setup which is throwing a 404 in my Laravel 5.6 app.

The problematic route is:

Route::get('/project/{project_id}/issue/create', 'IssueController@create');

If I remove the {project_id} parameter the view loads..but I need to be able to pass this id since I will be using it on this view to create new issues that are assigned to a project. All of the other routes work without issue.

My routes file (web.php) looks like this:

Route::get('/projects', 'ProjectController@index');
Route::get('/project/{project_id}', 'ProjectController@show');
Route::get('/project/{project_id}/issue/{issue_id}', 'IssueController@show');
Route::get('/project/{project_id}/issue/create', 'IssueController@create');

And my create function in the IssueController file is this:

public function create()
{
    return view('issue.create');
}

我的路由设置在我的Laravel 5.6应用程序中抛出了404. p>

有问题的路线是: p>

Route :: get('/ project / {project_id} / issue / create','IssueController @ create'); code > p>

如果我删除 {project_id} code>参数,视图会加载..但我需要能够传递此ID,因为我将在此处使用它 查看以创建分配给项目的新问题。 所有其他路由都没有问题。 p>

我的路由文件(web.php)如下所示: p>

  Route :: get  ('/ projects','ProjectController @ index'); 
Route :: get('/ project / {project_id}','ProjectController @ show'); 
Route :: get('/ project / {project_id} / issue  / {issue_id}','IssueController @ show'); 
Route :: get('/ project / {project_id} / issue / create','IssueController @ create'); 
  code>  pre> \  n 
 

我在IssueController文件中的create函数是这样的: p>

  public function create()
 {
 
 
 
 
 
返回视图('issue.create')  ; 
} 
  code>  pre> 
  div>

You missed project_id as parameter of your create method. Try this:

public function create($project_id)
{
    return view('issue.create');
}

and make a route like this:

Route::get('/project/issue/create/{project_id}','IssueController@create');