您的位置:首页 > 编程语言 > PHP开发

[李景山php]每天laravel[011]-laravel 中级任务翻译---路由

2017-03-27 13:42 525 查看
路由:

在我们任务列表应用的“基础指导版本”,我们定义了所有的我们的逻辑,使用的是闭包在我们的 routes.php 文件中。对于这个应用里面的大多数情况,我们使用控制器来组织我们的路由。控制器将会允许我们打破 http 请求处理逻辑通过更多的文件来应对于更好的组织。

显示一个视图:

我们将会有一个单独的路由,这个使用的是一个闭包函数,我们的 “/” 路由, 这个将会简单的加载对于应用使用者,所以,让我们填写我们的 “/”路由,从这个路由,我们将会渲染一个html模版,这个模版的内容是一个欢迎页面。

在 laravel 里面,所有的html 模版都被存储在 resources/views 目录下面,并且我们可以使用 view 帮助函数来返回这些模版对于我们的路由:




当然,我们需要实际的定义这个应用,我们需要稍微写一点。

认证[Authentication]:

还记得吧,我们也允许让我们用户创建帐号并且登录到我们的应用。在大多数情况下,这个应用是一个冗长的任务,但是需要一个完成的认证层。然而,由于这样的一个命令的需要,laravel框架尝试让这个步骤变动更容易。

首先,注意这里已经存在于 app/http/controller/auth/authcontroller 框架目录下。 这个控制器使用一个特殊的trait 如 AuthenticatesAndRegistersUsers ,这个 trait 包含了创造一个认证用户的必须逻辑。

认证路由:

所以,我们还有什么要做的呢?当然,我们依然需要创建注册和登录模版作为默认的路由来指向我们的认证控制器,首先,让我们添加我们需要的路由在 app/http/routes.php 文件。

如下图:

认证视图预览:

认证需要我们创建一个 login.blade.php 和 register.blade.php 在我们的 resources/views/auth 目录下, 当然,这个视图的设计和样式不重要,然而,他们至少需要包含一定的任务。

这个 register.blade.php 文件应该包含一个表单字段如 name,email,password 跟 password_confimation 字段 然后 创建一个 Post 请求到 auth/register 路由里面。

这 login.blade.php 文件应该包含一个表单,包含如下字段 email 和 password , 通过 post 方式提交到 auth/login。

注意:如果你想预览完整的视图,请记得可以在 github 上获取完整的应用。

任务控制器:

自从我们知道我们需要获取跟存储任务数据,让我们来创建一个 TaskController 类,通过Airtisan 命令行工具,这个操作将会放置一些一个新的控制器在 app/Http/Controller 目录:

操作命令如下:

php artisan make:controller TaskController –plain

现在这个控制器被生成了,让我们在回到从前,修改以前的一些路由, app/http/routes.php 文件里面来指向这个控制器。

如图:



认证所有的 任务路由:

对于这个应用,我们希望所有的任务路由请求一个认证用户,换句话说,这个用户必须登录进这个应用然后通过命令创建一个任务,所以,我们需要限定权限到我们的任务路由给到必须的认证用户,laravel 使用中间件把握!

为了一个认证用户对所有的方法在控制器里面,我们可以添加一个中间件方法从控制器结构,所有可以的路由中间件被定义在 app/http/Kernel.php 文件里面,在这个案例中,我们需要赋值 auth 中间件对应全部的控制器及控制器。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 函数 应用 闭包
相关文章推荐