【问题标题】:Laravel add seeder function to viewLaravel 添加播种功能查看
【发布时间】:2018-03-11 02:29:43
【问题描述】:

我想在后端添加一个“重置”按钮,如果按下它来将数据重置为标准,它只会运行所有播种机? 一定有办法做到这一点,因为我可能不是唯一一个有这个想法的人,但不幸的是我在网上找不到任何东西。

感谢您提前回复

【问题讨论】:

    标签: php laravel laravel-artisan seed


    【解决方案1】:

    您可以直接从您的代码中调用工匠命令。例如下面的那一个 刷新所有种子和迁移。

    php artisan migrate:refresh --seed相同

    Route::get('/reset', function(){
        \Artisan::call('migrate:refresh',['--seed' => ' ']);
    });
    

    【讨论】:

      【解决方案2】:

      您可以使用SomeModel::truncate(); 删除所有现有数据。删除对象后,您可以运行 $this->call(someTableSeeder::class); 再次为表播种。

      你也可以在你的 PHP 代码中调用 artisan 命令(见:https://laravel.com/docs/5.0/commands),在这种情况下你可以使用类似Artisan::call('db:seed');的东西

      【讨论】:

        【解决方案3】:

        您可以从控制器运行工匠命令:

        Artisan::call('migrate:fresh'); // = php artisan migrate:fresh
        Artisan::call('db:seed'); // = php artisan db:seed
        
        // OR
        Artisan::call('migrate:fresh', ['--seed' => true]);
        

        更多信息:https://laravel.com/docs/5.5/artisan#programmatically-executing-commands

        【讨论】:

          猜你喜欢
          • 2017-08-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-02-12
          • 2017-07-19
          • 2019-08-06
          • 2011-09-28
          相关资源
          最近更新 更多