注:以下笔记都是按照此进行开发学习,开发环境为Mac 。
一、从github上克隆项目到本地
git clone https://github.com/RryLee/StuGradeWithLaravel5.git
二、切换到本地项目目录下,安装composer
MacdeMacBook-Pro-3:~ mac$ cd DesktopMacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ curl -sS https://getcomposer.org/installer | phpAll settings correct for using ComposerDownloading 1.0.1...Composer successfully installed to: /Users/mac/Desktop/StuGradeWithLaravel5/composer.pharUse it: php composer.phar
// 可以将上边的命令放入到 bin目录下,方便后边不用每次都输入上次的命令
MacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ sudo mv composer.phar /usr/bin/composerMacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$
// 更新composer
MacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ composer update
更新出现这样的问题,-_-!!!
MacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- laravel/framework v5.0.9 requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.
看起来是php没有安装mcrypt扩展,如何安装mcrypt具体可以参考我的另一篇博文:
三、创建表和创建数据
桌面进入:
MacdeMacBook-Pro-3:~ mac$ cd Desktop/StuGrade
MacdeMacBook-Pro-3:StuGrade mac$
MacdeMacBook-Pro-3:StuGrade mac$ php artisan serve
Laravel development server started on http://localhost:8000/
利用Migration创建一个用户详细表
生成一个表,注意表名一般为复数 --create=users_info 为后边的标示
MacdeMacBook-Pro-3:laravel mac$ php artisan make:migration create_users_info_table --create=users_infoCreated Migration: 2016_04_23_131412_create_users_info_tableMacdeMacBook-Pro-3:laravel mac$
然后在database/migrations生成的迁移文件中,添加相关的字段:
2016_04_23_131412_create_users_info_table.php
integer('id')->unique()->unsigned(); // 学号唯一,取正数 $table->string('name'); $table->string('password'); $table->string('phone')->default(''); $table->string('sex')->default(''); $table->string('email')->default(''); $table->string('pro_class')->default(''); $table->boolean('is_admin')->default(0); $table->rememberToken(); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('users'); }}
最后,执行 php artisan migrate命令,在数据库中生成表users_info
MacdeMacBook-Pro-3:laravel mac$ php artisan migrateMigrated: 2016_04_23_132854_create_users_info_table
应用artisan命令给users_info表填充数据:
用命令生成填充表UserInfoTableSeeder
MacdeMacBook-Pro-3:~ mac$ cd Desktop/laravelMacdeMacBook-Pro-3:laravel mac$ php artisan make:seeder UsersInfoTableSeederSeeder created successfully.MacdeMacBook-Pro-3:laravel mac$
如下所示,我们将修改 Laravel 预先生成好的 UserInfoTableSeeder
类来给 run
方法添加一段可在数据库添加数据的语法:
delete(); UsersInfo::create([ 'id' => 2010300001, 'name' => '周润发', 'password' => Hash::make('2010300001'), ]); UsersInfo::create([ 'id' => 2010300002, 'name' => '周星驰', 'password' => Hash::make('2010300002'), ]); UsersInfo::create([ 'id' => 2010300003, 'name' => '成龙', 'password' => Hash::make('2010300003'), ]); UsersInfo::create([ 'id' => 2010300004, 'name' => '张曼玉', 'password' => Hash::make('2010300004'), ]); UsersInfo::create([ 'id' => 2010300005, 'name' => '林青霞', 'password' => Hash::make('2010300005'), ]); }}
在 DatabaseSeeder
类中,你可以使用 call
方法来运行其它的 seed 类。为避免发生单个 seeder 类变得太大的情况,可使用 call
方法来将数据填充拆分成多个文件。只需简单传递你想要运行的 seeder 类名称即可:
call(UsersInfoTableSeeder::class); Model::reguard(); }}
运行数据填充:
MacdeMacBook-Pro-3:laravel mac$ composer dump-autoloadGenerating autoload filesMacdeMacBook-Pro-3:laravel mac$ php artisan db:seedSeeded: UsersInfoTableSeeder
查看users_info表,数据填充OK:
数据填充,Laravel中文官方文档
PHP artisan 命令整合:
创建控制器:
php artisan make:controller Admin/AdminController
创建中间件
php artisan make:middleware isAdmin