文档章节

Laravel5学生成绩管理系统-01-安装-建表-填充数据

Corwien
 Corwien
发布于 2016/04/21 01:46
字数 868
阅读 242
收藏 5
点赞 1
评论 0

注:以下笔记都是按照此博文进行开发学习,开发环境为Mac 。

一、从github上克隆项目到本地

 
 git clone https://github.com/RryLee/StuGradeWithLaravel5.git

二、切换到本地项目目录下,安装composer

MacdeMacBook-Pro-3:~ mac$ cd Desktop
MacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ curl -sS https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading 1.0.1...

Composer successfully installed to: /Users/mac/Desktop/StuGradeWithLaravel5/composer.phar
Use it: php composer.phar

   

  // 可以将上边的命令放入到 bin目录下,方便后边不用每次都输入上次的命令

MacdeMacBook-Pro-3:StuGradeWithLaravel5 mac$ sudo mv composer.phar /usr/bin/composer
MacdeMacBook-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具体可以参考我的另一篇博文:

Mac下安装PHP的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_info
Created Migration: 2016_04_23_131412_create_users_info_table
MacdeMacBook-Pro-3:laravel mac$

 

   然后在database/migrations生成的迁移文件中,添加相关的字段:

2016_04_23_131412_create_users_info_table.php
<?php

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
           $table->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 migrate
Migrated: 2016_04_23_132854_create_users_info_table

 

  应用artisan命令给users_info表填充数据

  用命令生成填充表UserInfoTableSeeder

 

MacdeMacBook-Pro-3:~ mac$ cd Desktop/laravel
MacdeMacBook-Pro-3:laravel mac$ php artisan make:seeder UsersInfoTableSeeder
Seeder created successfully.
MacdeMacBook-Pro-3:laravel mac$

 

 

如下所示,我们将修改 Laravel 预先生成好的 UserInfoTableSeeder 类来给 run 方法添加一段可在数据库添加数据的语法:

<?php

use Illuminate\Database\Seeder;
use App\UsersInfo;
use App\Grade;

class UsersInfoTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        DB::table('users_info')->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 类名称即可:

<?php

use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;

class DatabaseSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Model::unguard();

        // 执行插入用户详细数据
         $this->call(UsersInfoTableSeeder::class);

        Model::reguard();
    }
}

 

   运行数据填充:

MacdeMacBook-Pro-3:laravel mac$ composer dump-autoload
Generating autoload files
MacdeMacBook-Pro-3:laravel mac$ php artisan db:seed
Seeded: UsersInfoTableSeeder

 

  查看users_info表,数据填充OK:

数据填充,Laravel中文官方文档http://laravel-china.org/docs/5.1/seeding

 

PHP artisan 命令整合:

创建控制器:

php artisan make:controller Admin/AdminController

 

创建中间件

     
php artisan make:middleware isAdmin

 

© 著作权归作者所有

共有 人打赏支持
Corwien
粉丝 26
博文 144
码字总数 115164
作品 0
广州
程序员
Laravel5学生成绩管理系统-07-添加侧边栏

可能看到上面图片中的右侧栏吧,我们先把它完成,然后一一实现它的功能.将index视图文件中的read2替换成: read2 => @include('Admin.right_bar') admin/index.blade.php 接着新建Admin/right_b...

Corwien ⋅ 2016/05/22 ⋅ 0

一道面试题中涉及到的SQL的高级使用

题目是这样的: 3、现在需要做一个全省的学生成绩资料库,系统功能和信息如下: 需要保存的信息有学生ID,学生姓名,学生成绩,所在学校,所在城市,时间 A、请你按照以上需求设计表结构,包...

cjxcloud ⋅ 2016/06/05 ⋅ 0

Python自动化开发学习12-MariaDB

关系型数据库 主流的关系型数据库大概有下面这些: Oracle : 甲骨文公司的企业级的数据库 SQL Server : 微软的 MySQL : 免费的数据库,现在也属于Oracle的旗下产品 MariaDB : 开源的数据...

骑士救兵 ⋅ 01/13 ⋅ 0

Laravel5学生成绩管理系统-04-Eloquent关联

数据表之间经常会互相进行关联。例如,一篇博客文章可能会有多条评论,或是一张订单可能对应一个下单客户。Eloquent 让管理和处理这些关联变得很容易,同时也支持多种类型的关联: 一对一# 一...

Corwien ⋅ 2016/05/07 ⋅ 0

急求,高手帮忙,成绩管理系统

使用c++语言编写 设计题目:6、成绩管理系统 (限最多5人完成) 现有学生成绩信息,内容如下 姓名 学号 语文 数学 英语 张明明 01 67 78 82 李成友 02 78 91 88 张辉灿 03 68 82 56 王露 04...

wangjungang293 ⋅ 2010/06/11 ⋅ 12

linux中MySQL小结

MySQL的相关概念介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB应用方面,MySQL是最好的 RD...

狗尾巴草m ⋅ 2017/10/14 ⋅ 0

简单oracle语句练习

XUANKE表 CNO SNO GRADE C01 9512101 100 C02 9512101 86 C06 9512101 NULL C02 9512102 78 C04 9521101 66 C01 9512102 92 C02 9521102 75 C04 9512102 92 C02 9521103 68 C06 9512103 NULL......

一舞千年不落尘 ⋅ 2016/09/28 ⋅ 0

ExcelReport第一篇:使用ExcelReport导出Excel

导航 目 录:基于NPOI的报表引擎——ExcelReport 下一篇:ExcelReport源码解析 概述 本篇将通过导出学生成绩的示例演示“使用ExcelReport导出Excel”的步骤。 示例(导出学生成绩明细) 步骤...

hanzhaoxin ⋅ 2015/01/29 ⋅ 0

java初级面试题(sql方面)

下面我给大家带来一些数据库知识点和面试题。 下列的链接是我看到非常好的java基础面试题的博文推荐给大家。 http://blog.csdn.net/jackfrued/article/details/44921941/ 关系数据库这一块是...

The_flying_pig ⋅ 2017/12/18 ⋅ 0

一些sql用法例子【Updating】

1、利用instr连接表做字段查询,group_concat做值的合并: from:http://topic.csdn.net/u/20120913/15/22d39ecf-da3e-4088-a7d1-aa095cae4b7a.html 2、findinset 用法: 有两张表: a: id...

xrzs ⋅ 2012/09/18 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

istio 文档

https://istio.io/docs/concepts/ https://istio.io/docs/concepts/traffic-management/handling-failures/ https://istio.io/docs/concepts/traffic-management/rules-configuration/......

xiaomin0322 ⋅ 17分钟前 ⋅ 0

编程语言的作用及与操作系统和硬件的关系

一、编程语言的作用及与操作系统和硬件的关系 作用:编程语言是计算机语言,是一种程序员与计算机之间沟通的介质,通过编程语言可以使得计算机能够根据人的指令一步一步去工作,完成某种特定...

slagga ⋅ 28分钟前 ⋅ 0

runtime实现按钮点击事件

也不能说是实现吧,,,就是有点类似于RAC里边的写法,不用给btn添加另外的点击事件,就那个add...select...这样子很不友好,来看下代码: [self.btn handleControlEvent:UIControlEventTou...

RainOrz ⋅ 28分钟前 ⋅ 0

Windows系统运维转linux系统运维的经历

开篇之前,首先介绍一下我的背景把:我是一个三线城市的甲方运维。最近,在《Linux就该这么学》书籍的影响下和朋友小A(Linux运维已经三年了,工资也比我的高很多)的影响下,决定转行。最近...

linux-tao ⋅ 29分钟前 ⋅ 0

zip压缩工具,tar打包工具

zip压缩工具 zip打包工具跟前面说到的gzip,bz2,xz 工具最大的不一样是zip可以压缩目录。如果没有安装,需要使用yum install -y zip 来安装。安装完之后就可以直接使用了,跟之前提到的压缩...

李超小牛子 ⋅ 37分钟前 ⋅ 0

使用npm发布自己的npm组件包

一、注册npm账号 官网:https://www.npmjs.com/signup 注册之后需要进行邮箱验证,否则后面进行组件包发布时候会提示403错误,让进行邮箱核准。 二、本地新建一个文件夹,cd进入后使用npm i...

灰白发 ⋅ 39分钟前 ⋅ 0

010. 深入JVM学习—垃圾收集策略概览

1. 新生代可用GC策略 1. 串行GC(Serial Copying) 算法:复制(Copying)清理算法; 操作步骤: 扫描年轻代中所有存活的对象; 使用Minor GC进行垃圾回收,同时将存活对象保存到“S0”或“S...

影狼 ⋅ 39分钟前 ⋅ 0

JVM性能调优实践——JVM篇

在遇到实际性能问题时,除了关注系统性能指标。还要结合应用程序的系统的日志、堆栈信息、GClog、threaddump等数据进行问题分析和定位。关于性能指标分析可以参考前一篇JVM性能调优实践——性...

Java小铺 ⋅ 40分钟前 ⋅ 0

误关了gitlab sign-in 功能的恢复记录

本想关sign-up的,误点了sign-in 退出后登录界面提示: No authentication methods configured 一脸懵逼.. 百度后众多方案说修改application_settings 的 signin_enabled字段; 实际上新版本字段...

铂金蛋蛋 ⋅ 41分钟前 ⋅ 0

登录后,后续请求接口没有带登录cookie可能原因

1.XMLHttpRequest.withCredentials没设置好,参考https://developer.mozilla.org/zh-CN/docs/Web/API/XMLHttpRequest/withCredentials...

LM_Mike ⋅ 41分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部