2017-06-17 116 views
1

我最近为共享主机托管了一个laravel项目(针对客户),尝试通过ssh访问服务器失败后,我联系了通知我ssh服务的主机不适用于我的客户托管计划,这意味着我无法使用终端,也无法使用工匠。我知道如何编写一个php脚本来创建sql表格,但在此之前,我想知道是否已经定义了迁移(表格)之后的laravel的快捷方式。我想要的就是创建一条路线project.com/run_migrations来完成这项工作!在此先感谢如何在没有工匠的情况下运行laravel迁移(使用代码)

回答

5

您可以轻松创建在PHP中一个小工匠这样的脚本:

Artisan::call('migrate'); 

这等于php artisan migrate。在任何想要运行迁移的地方使用它。

如果您处于生产模式(如果您的.env文件中有APP_ENV=production),那么如果您希望允许进行更改,则必须强制迁移。可以按如下方式做到这一点:

Artisan::call('migrate', ["--force"=> true ]); 

这等于增加了--force标志一拉php artisan migrate --force的。

虽则回答您的具体问题,创建这样的路线:

Route::get('/run-migrations', function() { 
    return Artisan::call('migrate', ["--force"=> true ]); 
}); 

如果您有兴趣创建一个Web安装程序,你可能有兴趣在这个包:

https://github.com/Froiden/laravel-installer

查看代码,了解他如何处理迁移和种子等。

相关问题