Doctrine handler middleware for Slim Framework.
Doctrine integration service for Slim3 can be found in its own repository juliangut/slim-doctrine
Best way to install is using Composer:
php composer.phar require juliangut/slim-doctrine-middleware
Then require_once the autoload file:
require_once './vendor/autoload.php';Just add as any other middleware.
use Slim\Slim;
use Jgut\Slim\Middleware\DoctrineMiddleware;
$app = new Slim();
...
$app->add(new DoctrineMiddleware());There are two ways to configure Doctrine Middleware
First by using doctrine key in Slim application configuration
// Minimun configuration
$config = [
'doctrine' => [
'connection' => [
'driver' => 'pdo_sqlite',
'memory' => true,
],
'annotation_paths' => ['path_to_entities_files'],
],
];
$app = new Slim($config);
$app->add(new DoctrineMiddleware());Second way is assigning options directly to Doctrine Middleware
$app = new Slim();
$doctrineMiddleware = new DoctrineMiddleware();
$doctrineMiddleware->setOption(
'connection',
['driver' => 'pdo_sqlite', 'memory' => true]
);
$doctrineMiddleware->setOption('annotation_paths', ['path_to_entities_files']);
$app->add($doctrineMiddleware);connectionarray of PDO configurationscache_driverarray with Doctrine cache configurationstypestring representing cache type,apc,xcache,memcache,redisorarrayhoststring representing caching daemon host, needed formemcacheandredis, defaults to '127.0.0.1'portstring representing caching daemon port, optionally available formemcache(defaults to 11211) andredis(defaults to 6379)
proxy_pathpath were Doctrine creates its proxy classes, defaults to /tmpannotation_filesarray of Doctrine annotations filesannotation_namespacesarray of Doctrine annotations namespacesannotation_autoloadersarray of Doctrine annotations autoloader callablesannotation_pathsarray of paths where to find annotated entity filesxml_pathsarray of paths where to find XML entity mapping filesyaml_pathsarray of paths where to find YAML entity mapping filesauto_generate_proxiesbool indicating whether Doctrine should auto-generate missing proxies (default: true)
annotation_paths, xml_paths or yaml_paths is needed by Doctrine to include a Metadata Driver
Found a bug or have a feature request? Please open a new issue. Have a look at existing issues before
See file CONTRIBUTING.md
See file LICENSE included with the source code for a copy of the license terms