2017 © Pedro Peláez
 

package orientdb-entity

Symfony2 OrientDb entity manager

image

spartaksun/orientdb-entity

Symfony2 OrientDb entity manager

  • Tuesday, August 18, 2015
  • by spartaksun
  • Repository
  • 1 Watchers
  • 1 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

OrientDb entity manager

Install, (*1)

composer require spartaksun/orientdb-entity

Example of services.yml:, (*2)

services:
    orient:
        class: PhpOrient\PhpOrient
        public: false
        properties:
            hostname:   'localhost'
            port:        2424
            username:   'root'
            password:   'root'
    orient.em:
        class: spartaksun\OrientDb\EntityManager
        arguments: [@orient, "your_orient_db_name"]
        properties:
            classMap:
                "Country": YourBundle\Entity\Country

Define entities by extending spartaksun\OrientDb\Entity class. Use internal validators or define your own by extending abstract spartaksun\OrientDb\Validators\Validator:, (*3)

/**
 * Country entity
 * @property $first_name
 * @property $last_name
 */
class Country extends spartaksun\OrientDb\Entity
{
    /**
     * {@inheritdoc}
     */
    public function validators()
    {
        return [
            'name' => [
                [
                    spartaksun\OrientDb\Validators\StringValidator::class, 
                    ['min' => 3, 'max' => 32],
                ],
            ],
        ];
    }
}

Usage in Symfony2 controller:, (*4)

$this->get('orient.em');
// Init repository
$repository = $this->get('orient.em')
        ->getRepository( Country::class );
// Get all countries
$countries = $repository->findAll();
foreach($countries as $country) {
     echo $country->name . "\n";
}
// Add new country
$country = new Country();
$country->name = 'Ukraine';
if($repository->persist($country)) {
    $rid = $country->getRid();
} else {
    var_dump($country->getErrors());
}
// find one
$country = $repository->find('name=?', 'Ukraine')

The Versions

18/08 2015

dev-master

9999999-dev

Symfony2 OrientDb entity manager

  Sources   Download

Apache-2.0

The Requires