2016 版 Laravel 系列入门教程(一)

来源:互联网 发布:tensorflow 指定gpu 编辑:程序博客网 时间:2024/05/16 15:17

写在前面

最近在学习Laravel框架方面的相关知识,准备从Laravel中文网站从零开始学习Laravel的相关知识,针对该系列的入门教程的实践过程中我所遇到的问题进行归类总结,
教程地址。
我会将教程的详细步骤写清楚以及在必要的地方写上附注。
本教程示例代码见:https://github.com/johnlui/Learn-Laravel-5

在任何地方卡住,最快的办法就是去看示例代码。

本文基于 Laravel 5.2 版本,无奈 5.2 的中文文档还没有跟上,大家勉强看一下 5.1 的吧:

Laravel 5.1 中文文档:
  1. http://www.golaravel.com/laravel/docs/5.1/
  2. http://laravel-china.org/docs/5.1

默认条件

你应该懂得 PHP 网站运行的基础知识,并且有了一个完善的开发环境。跟随本教程走完一遍,你将会得到一个基础的包含登录、后台编辑、前台评论的简单 blog 系统。

Tips

  1. 环境要求:PHP 5.5.9+,MySQL 5.1+
  2. 本教程不推荐完全不懂 PHP 与 MVC 编程的人学习,Laravel 的学习曲线不仅仅是陡峭,而且耗时很长,请先做好心理准备。
  3. 这不是 “一步一步跟我做” 教程。本教程需要你付出一定的心智去解决一些或大或小的隐藏任务,以达到真正理解 Laravel 运行逻辑的目的。
  4. 本宝宝使用 Safari 截图是为了好看,宝宝们在开发时请选择 Chrome 哦~

开始学习

1. 安装

许多人被拦在了学习 Laravel 的第一步:安装。并不是因为安装有多复杂,而是因为【众所周知的原因】。在此我推荐一个 composer 全量中国镜像:http://pkg.phpcomposer.com/ 。启用 Composer 镜像服务作为本教程的第一项小作业请自行完成哦。

镜像配置完成后,在终端(Terminal 或 CMD)里切换到你想要放置该网站的目录下(如 C:\wwwroot、/Library/WebServer/Documents/、/var/www/html、/etc/nginx/html 等),运行命令:

composer create-project laravel/laravel learnlaravel5  

然后,稍等片刻,当前目录下就会出现一个叫 learnlaravel5 的文件夹,安装完成啦~

附:

composer的安装很早就完成了,我所参照的安装教程在composer中文网。

另外,我喜欢直接在文件夹中打开对应的DOS界面,具体操作步骤为:鼠标左键文件夹--按住shift不放--同时鼠标右键单击出现子选项栏--按键盘键位 “W”。


2. 运行

为了尽可能地减缓学习曲线,推荐宝宝们使用 PHP 内置 web 服务器驱动我们的网站。运行以下命令:

cd learnlaravel5/public  php -S 0.0.0.0:1024  

这时候访问 http://127.0.0.1:1024 就是这个样子的:

save image


这时候你可能要问了:为什么本宝宝的页面是一片空白?请使用开发者工具查看网络请求,只要是 200 状态就说明运行成功了,空白是因为这个页面引用了 Google Fonts,你懂的~

至于为什么选择 1024 端口?因为他是 *UNIX 系统动态端口的开始,是我们不需要 root 权限就可以随意监听的数值最小的端口。


附:
我在进行过程中并没有出现上文提到的页面一片空白,而是上图内容。

3. 体验牛逼闪闪的 Auth 系统

Laravel 利用 PHP5.4 的新特性 trait 内置了非常完善好用的简单用户登录注册功能,适合一些不需要复杂用户权限管理的系统,例如公司内部用的简单管理系统。

激活这个功能非常容易,运行以下命令:

php artisan make:auth  

访问 http://localhost:1024/login,如果你本地已经科学上网,那就能看到以下页面:

save image

如果你不能科学上网,就把 learnlaravel5/resources/views/layouts/app.blade.php 中的 https://fonts.googleapis.com 换成 http://fonts.useso.com 就好啦~

cdnjs.cloudflare.com 可能会短暂抽风,不要灰心,那只是大墙在抖动,一会儿就好了。

4. 连接数据库

接下来我们要连接数据库了,请自行准备好 MySQL 服务哦。

a. 修改配置

不出意外的话,learnlaravel5 目录下已经有了一个 .env 文件,如果没有,可以复制一份 .env.example 文件重命名成 .env,修改下面几行的值:

DB_HOST=127.0.0.1  DB_PORT=3306  DB_DATABASE=laravel5  DB_USERNAME=root  DB_PASSWORD=password  

推荐新建一个名为 laravel5 的数据库,并且使用 root 账户直接操作,降低学习数据库的成本。

数据库配置好之后,在登录界面填写任意邮箱和密码,点击 Login,你应该会得到以下画面:




附:
我将教程中的图片用上了,因为我已经解决这个问题了。

它说 users 表不存在呀,接下来我们将见识 Laravel 另外一个实用特性。

b. 进行数据库迁移(migration)

运行命令:

php artisan migrate  

我们得到了如下结果:

它说 users 表不存在呀,接下来我们将见识 Laravel 另外一个实用特性。

b. 进行数据库迁移(migration)

运行命令:

php artisan migrate  

我们得到了如下结果:

它说 users 表不存在呀,接下来我们将见识 Laravel 另外一个实用特性。

b. 进行数据库迁移(migration)

运行命令:

php artisan migrate  

附:我在这里出现了一个问题,前面提到了推荐新建数据库名为laravel5 ,但是在执行上述命令时会报错

save image

我们可以发现,实际操作中并不是要创建名为laravel5的数据库而是名为 laravel的数据库。

我们得到了如下结果:

save image

数据库迁移成功!赶快打开 http://localhost:1024/register 注册一个用户试试吧~

附:
我注册完的界面:
save image

c. migration 是啥?

打开 learnlaravel5/database/migrations/2014_10_12_000000_create_users_table.php 文件,你肯定能一眼看出它的作用:用 PHP 描述数据库构造,并且使用命令行一次性部署所有数据库结构。




0 0
原创粉丝点击