【问题标题】:Call php artisan migrate using Artisan使用 Artisan 调用 php artisan 迁移
【发布时间】:2019-06-30 22:26:42
【问题描述】:

是否可以为

创建 Artisan 调用或命令
php artisan migrate

点赞Artisan::call('migrate);

所以我可以在动态更改连接时将丢失的表迁移到我的数据库中。

  Config::set('database.connections.dynamicdb', array(
        'driver'    => 'mysql', 
         'host'      => '127.0.0.1',
         'database'  =>  $database_name,
         'username'  =>  'test_user',
         'password'  =>  '123456',
         'charset'   => 'utf8mb4',
         'collation' => 'utf8mb4_unicode_ci',
         'strict'    => false,
         'options'   => [                                
               \PDO::ATTR_EMULATE_PREPARES => true
            ]
       ));

  Artisan::call('migrate');

或者有没有办法为它创建一个命令?请提出一些解决方案。

【问题讨论】:

  • 您回答了自己的问题 - Artisan::call('migrate')。你试过吗?你有问题吗?
  • 它不起作用。我的是 laravel 5.6
  • 定义“它不起作用”。发生什么了?您遇到什么错误或行为?
  • 页面是否“挂起”并坐在那里?如果这是在生产中,您可能需要传递--force;见stackoverflow.com/questions/37953783/…
  • 您可能还需要告诉它执行--database dynamicdb。您继续说“不起作用”,但没有说明发生了什么——无论您收到错误、永无止境的加载指示符,还是就像成功一样继续。

标签: php laravel-5 dynamic laravel-artisan


【解决方案1】:

试试这个代码:

\Artisan::call('migrate',
 array(
   '--path' => 'database/migrations',
   '--database' => 'dynamicdb',
   '--force' => true));

因为我的默认设置采用 /app 作为路径,并且迁移被放置在数据库/迁移中。因此,这将在创建新项目时对我有用。

【讨论】:

    猜你喜欢
    • 2020-01-18
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 2015-06-01
    • 2017-10-12
    • 2019-11-06
    • 2019-05-24
    • 1970-01-01
    相关资源
    最近更新 更多