Acesse o aplicativo em sala de aula no Slim Framework 3

Estou tendo problemas para entender como acessar a instância do Slim quando uma rota está em uma classe separada do index.php

Ao usar o Slim Framework 2, sempre usei o seguinte, mas não está funcionando no Slim 3:

$this->app = \Slim\Slim::getInstance();

Estou tentando acessar uma conexão com o banco de dados que eu configurei no contêiner, mas de uma classe separada. Isto é o que eu tenho atualmente no meu index.php para iniciar um aplicativo Slim:

require_once("rdb/rdb.php");
$conn = r\connect('localhost');
$container = new \Slim\Container;
$container['rdb'] = function ($c){return $conn;}
$app = new \Slim\App($container);

E aqui está a minha rota:

$app->get('/test','\mycontroller:test');

E é isso que recebi na minha classe mycontroller.php, para a qual minha rota aponta, que obviamente não está funcionando, pois o aplicativo $ this-> não existe:

class mycontroller{
public function test($request,$response){
$this->app->getContainer()->get('rdb');
}

A mensagem de erro é a seguinte, devido ao fato de a getinstance não fazer parte do Slim 3 em comparação com o Slim 2:

Call to undefined method Slim\App::getInstance() 

Grato por qualquer ajuda,

Atenciosamente Dan

questionAnswers(5)

yourAnswerToTheQuestion