分类 Laravel入门教程 下的文章

Laravel入门教程——一个简单cms的实现(05)

作者: douyasi
网站:https://douyasi.com/category/startlaravel/
备注:本教程是在当前最新Laravel稳定版v4.2.X下实现的,其它相异版本如果有问题请自行排除。
本文为作者原创记录,转载请保留署名与来源。

RESTFUL路由与控制器

RESTFUL详解

资源控制器可以简单的建立跟资源相关的 RESTful 控制器。下面,我们开始演示操作文章资源。

命令行执行以下命令建立控制器:

php artisan controller:make ArticleController

然后我们可以注册一个资源化路由至控制器上:

Route::resource('article', 'ArticleController');

打开 /app/controllers/ 目录,我们可以看见框架已经自动地给我们生成 ArticleController.php 文件,打开我们看看,大致可以看到以下结构:




- 阅读剩余部分 -

Laravel入门教程——一个简单cms的实现(04)

作者: douyasi
网站:https://douyasi.com/category/startlaravel/
备注:本教程是在当前最新Laravel稳定版v4.2.X下实现的,其它相异版本如果有问题请自行排除。
本文为作者原创记录,转载请保留署名与来源。

页面显示与路由控制(二)

Auth继续深入使用

上一节我们只是简单地使用了下 Auth,这一节打算继续深入使用 Auth。在使用 Auth 时我们可能会(反正我觉得是一定会)遇到诸多问题,这是因为 Laravel 作者的一些认证构思与你我想象的认证构思不同。

Auth 默认使用 email 作为认证验证的一个条件,还提供了诸如“记住我”快捷认证功能和找回登录密码凭证的方法。

使用 Auth::logout() 退出用户时,我发现框架报了一个错误,错误界面在此:

logout_error

错误原因是 admin 数据表中没有 remember_token 字段。在数据库设计时我就没考虑过这个字段,但 Auth 认证时有使用到,审查下 Laravel Auth 相关代码,我们可以发现,logout调用了 refreshRememberToken 方法。

为此,我们需要修改admin数据表相关字段。

admin添加remember_token字段,也添加上email字段,以配合Auth使用。




- 阅读剩余部分 -

Laravel入门教程——一个简单cms的实现(03)

作者: douyasi
网站:https://douyasi.com/category/startlaravel/
备注:本教程是在当前最新Laravel稳定版v4.2.X下实现的,其它相异版本如果有问题请自行排除。
本文为作者原创记录,转载请保留署名与来源。

页面显示与路由控制

建立静态首页

实际上,由于目前数据很少,复杂的首页页面对我们来说是种干扰,不如先写一个简单的首页。

为了方便快捷起见,我们把控制器,视图,模型文件都放在app对应目录下,位于顶级命名空间下,当然你也可以使用或建立 workbench 来管理的你的代码。

好,在 /app/views/ 下新建一个 index.blade.php,写下代码:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
    <p>这是首页</p>
</body>
</html>

现在,我们需要实现访问网站域名首页就能展示“这是首页”内容。

下面,我们修改下路由,文件位于 /app/route.app :

Route::get('/',function()
{
    returnView::make('index');
});

随后,我们访问下网站首页,就能看到“这是首页”4个字。




- 阅读剩余部分 -

Laravel入门教程——一个简单cms的实现(02)

作者: douyasi
网站:https://douyasi.com/category/startlaravel/
备注:本教程是在当前最新Laravel稳定版v4.2.X下实现的,其它相异版本如果有问题请自行排除。
本文为作者原创记录,转载请保留署名与来源。

建立数据库

Laravel 框架自带数据库建立与迁移工具,使用 php artisan 可以很方便建立或迁移数据库。

下面简单说下本cms数据库结构。

数据库表结构

实现本cms需要用到多张表,为了加快教程,我们先把最主要的2张表(某些扩展或关联字段也有可能被省去)——管理用户表 admin 和文章表article 拿出来操作。

其它表,诸如文章分类表,文章标签表,系统设置配置表等一律略去。

admin表:

字段名类型备注说明
idint管理用户ID(自增)
usernamevarchar管理用户名,用于登录
passwordvarchar管理用户密码

article表:

字段名类型备注说明
idint文章ID(自增)
titlevarchar文章标题
contenttext文章内容
slugvarchar文章缩略名



- 阅读剩余部分 -

Laravel入门教程——一个简单cms的实现(01)

作者: douyasi
网站:https://douyasi.com/category/startlaravel/
备注:本教程是在当前最新Laravel稳定版v4.2.X下实现的,其它相异版本如果有问题请自行排除。
本文为作者原创记录,转载请保留署名与来源。

准备性工作

说明

这里准备性工作是指“实现这个cms项目之前必须完成的事务”,比如:
需求的明确前端页面的设计与实现框架初始化环境的搭建数据库模型的设计等。

这里我就不多列举出来啊,这些准备性的工作有时也会耗费不少精力,尤其是在我自己一个人独立完成的情况下。

系统目标与需求

下面简单的说下,这个简单cms最主要实现的目标和需求吧:





- 阅读剩余部分 -