Recently for one my project we installed Laravel 5.3 on shared server where we were not having SSH or route access.
As we know general practice with Laravel is to create database tables with migrations and for that we have to run artisan commands through terminal and SSH.
But in our case we were not having SSH access, we have only FTP and database access so we have to figure out a way to run this commands through web. In this blog I am going to explain how to do this.
After reading Laravel 5.3 document I came to know that Laravel gives you Artisan class to run artisan command. So what I did is I created two routes, one for creating migration and other to run migration.
As we know general practice with Laravel is to create database tables with migrations and for that we have to run artisan commands through terminal and SSH.
But in our case we were not having SSH access, we have only FTP and database access so we have to figure out a way to run this commands through web. In this blog I am going to explain how to do this.
After reading Laravel 5.3 document I came to know that Laravel gives you Artisan class to run artisan command. So what I did is I created two routes, one for creating migration and other to run migration.
To create migration
Route::get('/create-migration-command', function () {
Artisan::call('make:migration', ['name' => 'migration_name']);
});
As you can see here the command is make:migration and parameter passed is name of migration.
Virtually it is equivalent to following SSH command.
php artisan make:migration migration_name
This will generate migration file in database folder, you can open it through FTP and add necessary code of migration.
Run Migration
Route::get('/run-migration-command', function () {
Artisan::call('migrate', []);
});
Virtually it is equivalent to following SSH command.
php artisan migrate
Hope this helps you.
No comments:
Post a Comment