laravel-admin 里面的MVC

laravel-admin 架构原理其实都是类似mvc,期间许多创建步骤不需要手工去创建,提供了人性化的命令自动生成 (常用的命令: php artisan xx)

一. Model 层

该层对接 后端模型 <---> 数据库表

熟悉EF 模式的同学应该清楚,模型和数据库表字段存在一一映射关系的

1. 创建模型

php artisan make:model Hospital --migration

注意:其中Company是你需要创建的模型名称   --migration 是为了数据库表创建用的

会在/App/Model 目录下生成模型Company.php

会在/database/migrations目录下生成 2021_10_20_112631_create_hospitals_table.php (此文件中可以配置company表的的字段)

2.修改表字段

修改/database/migrations/2021_10_20_112631_create_hospitals_table.php  中up方法,补充需要的表数据字段

 

 

 

 

2.配置数据库迁移文件

php artisan migrate 

会生成对应的数据库表

 

 

 

3.生成模拟的假数据 (可以根据实际情况确认是否需要此步骤)

1)创建数据库填充器

php artisan make:seeder HospitalsTableSeeder

会在/database/seeders/目录下生成HospitalsTableSeeder.php文件

2)修改/database/seeders/HospitalsTableSeeder.php  补充模拟数据的方式

 
class HospitalsTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $faker = $this->withFaker();
        // 插入一条记录到 users 表,通过 Faker 模拟字段值
        DB::table('hospitals')->insert([
            'name' => $faker->unique()->name,
            'address' => $faker->address,
            'buildtime' => now()
        ]);
    }

     /**
     * 获取 Faker 实例
     *
     * @return Generator
     */
    protected function withFaker()
    {
        return Container::getInstance()->make(Generator::class);
    }
}

3)在database/seeders/DatabaseSeeder.php 文件run方法中调用数据模拟器

 

 

4)最后执行 php artisan db:seed 即可插入对应记录到 hospitals表了

 

 

二.View层

laravel-admin 可以不单独配置,此处省略

 

三. Controller层

1. 命令行生成控制器

php artisan admin:make HospitalController --model=App\\Models\\Hospital

控制器生成的路径:App\Admin\Controllers\HospitalController

 

2. 在路由中添加配置 app/Admin/routes.php

$router->resource('hospital', HospitalController::class);

3. 运行 php artisan serve 启动

在浏览器里面输入http://127.0.0.1:8000/admin/hospital

 

posted @ 2021-10-21 11:39  土匪哥哥  阅读(247)  评论(0)    收藏  举报