Skip to content

phprest/phprest-service-orm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Phprest Orm Service

Author Software License

Description

Orm Service which uses these components:

Installation

Install it through composer.

{
    "require": {
        "phprest/phprest-service-orm": "@stable"
    }
}

tip: you should browse the phprest/phprest-service-orm page to choose a stable version to use, avoid the @stable meta constraint.

Usage

Configuration

For the configuration you should check the Config class.

Example

<?php
$ormConfig = new \Phprest\Service\Orm\Config(
    [
        'driver'            => 'pdo_mysql',
        'host'              => 'localhost',
        'dbname'            => 'phprest',
        'charset'           => 'utf8',
        'user'              => 'root',
        'password'          => 'root'
    ],
    ['path_to_the_entities']
);

$ormConfig->migration = new \Phprest\Service\Orm\Config\Migration('path_to_the_migrations');
$ormConfig->fixture = new \Phprest\Service\Orm\Config\Fixture('path_to_the_fixtures');

Registration

<?php
use Phprest\Service\Orm;
# ...
/** @var \Phprest\Application $app */

$app->registerService(new Orm\Service(), $ormConfig);
# ...

Reaching from a Controller

To reach your Service from a Controller you should use the Service's Getter Trait.

<?php namespace App\Module\Controller;

use Phprest\Service;

class Index extends \Phprest\Util\Controller
{
    use Service\Orm\Getter;

    public function post(Request $request)
    {
        /** @var \Doctrine\ORM\EntityManager $em */
        $em = $this->serviceOrm();
    }
}

Cli

You can use a helper script if you want after a composer install (vendor/bin/phprest-service-orm).

You have to provide an orm config for the script. You have two options for this:

  • Put your orm configuration to a specific file: app/config/orm.php
  • You have to return with the orm configuration in the proper file
  • Put the path of the configuration in the paths.php file
  • You have to return with an array from the paths.php file with the orm configuration file path under the service.orm.config array key

Releases

No releases published

Packages

No packages published

Languages