如何在Laravel 5.2中路由localhost url

问题描述:

我正在使用laravel应用程序。在我的应用程序中,我有控制器功能来查看窗体如下。如何在Laravel 5.2中路由localhost url

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

当查看项目/ new.blade.php文件它包含窗体。在此表格中填写并保存它是在项目表中生成新项目。现在我需要保存此表单后,将页面重定向到同一个项目文件夹中的collaborator.blade.php文件。和本地主机URL,因为这

localhost:8000/projects/10/collaborators 

这是我的控制器方法

public function projectcollaborators() 
     { 
      return view('projects.collaborators'); 

     } 

和路线

Route::get('projects/{projects}/collaborators', [ 
    'uses' => '\App\Http\Controllers\[email protected]', 

]); 

如何管理控制器和路线上述要求的成功?

+0

使用Eloquent ORM将发布的数据保存到表中,并仅对POST路由执行重定向。你向我们展示了一条基本上返回视图的线。请张贴你的路线和控制器功能,看看你已经尝试过。 – Peter

+0

@Peter请参阅我编辑的问题 – John

你应该有一个路线::后在你的路线文件捕获表单提交,

这样说:Route::post('projects', '[email protected]');

返回的观点应该被称为指数有这样一个路线的功能: Route::get('projects', '[email protected]');

在创建函数中,您可以使用Input()来获取表单提交的信息。

获取您需要的信息后,您可以使用Eloquent将详细信息添加到项目表中。

例如

$project = new Project(); 
$project->name = 'Name' 
$project->fields = 'Text' 
$project->save(); 

插入和节省的细节到数据库后,您可以使用重定向功能进行重定向至projects/ID/collaborators路线。

您还需要创建projects/ID/collaborators路线,所以你没得到了404 ...

例如Route::get('projects/{id}/collaborators', '[email protected]');

+0

那么我可以使用另一个控制器(如ProjectCollaboratorController)来执行此操作 – John

+0

是的。只要使用您使用的任何控制器并在路线中更改即可。 – Peter