<?php

//контейнер зависимости слим т.е. подключение создано
$container['capsule'] = function($container){

  $capsule = new Illuminate\Database\Capsule\Manager;

  $capsule->addConnection([
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'report_db',
    'username'  => 'mysql',
    'password'  => 'mysql',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
  ]);
  $capsule->setAsGlobal();
  $capsule->bootEloquent();
  return $capsule;
};

//вот тест контроллер

namespace Controllers;

use models\eloquent_model\myUsers;
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
//это для только изменения таблицы вроде не нужно
use Illuminate\Database\Migrations\Migration;

class TestController extends AppController {

  public function test(){

    //контейнер зависимости slim я передаю в мой класс контроллера как аргумент
    //так же аргументами передаю $request и $response - это к слову
    //тут переопределяю дефолтную модель users из sentinel на свою myUsers, в учебных целях
    $this->container->sentinel::getUserRepository()->setModel(myUsers::class);
    $this->container->sentinel::getPersistenceRepository()->setUsersModel(myUsers::class);

	//подключение capsule доступно		
    //var_dump($this->container->capsule);
    
    //это все работает
    //$eUser = myUsers::create( ['email' => 'email', 'password'=>'09876']);
    //$eUser = myUsers::first();
    //$eUser = myUsers::find(27);
    
    //тоже все работает
    //$table = new myUsers();
    //$table->test();
	//$table->email = 'емаил3';
	//$table->password = 'земля3';
	//$table->save();

	//а вот с Schemа у меня проблемы		
	//при запуске выпадает ошибка Call to a member function connection() on null
	//ну понятно - не видит подключения
	//но почему модель myUsers все видит а Schema нет?
	
	//не работает
    Schema::create('test', function (Blueprint $table) {
      $table->increments('id');
    });

   
   	//в документации указано что можно принудительно добавить подключение вручную	
   	//таким образом

	Schema::connection('foo')->create('test', function (Blueprint $table) {
      $table->increments('id');
    });	

	//но что в качестве 'foo' идет? Подклюбчение capsule?
	