Laravel Running 'migrate:fresh' via code returns session error

200 Views Asked by At

I am using this function to create a fresh database tables

public function new_migration(){

        if(App::environment('demo')){
            try {
                
                Artisan::call('cache:clear');
                Artisan::call('route:clear');
                Artisan::call('config:clear');
                Artisan::call('view:clear');
                Artisan::call('migrate:fresh', [
                    '--seed' => true,
                ]);

                echo 'New migrations done!';

            } catch (Exception $e) {
                Response::make($e->getMessage(), 500);
            }
        }else{
            App::abort(404);
        } 
}

Which throws this error

Illuminate\Database\QueryException SQLSTATE[42S02]: Base table or view not found: 1146 Table 'database.sessions' doesn't exist (SQL: select * from sessions where id = ThDv1nWU3nFgNizz7gpqOYAUkxe9O2olFUjtBXE1 limit 1)

I am using database as session driver

SESSION_DRIVER=database
SESSION_LIFETIME=120

Running

php artisan migrate:fresh --seed 

directly on command line runs perfectly fine

pfa screenshot

enter image description here

0

There are 0 best solutions below