2017 © Pedro Peláez
 

library doctrine-orm-entity-finder

Boilerplate for building finder classes to be used with Doctrine ORM

image

kyoushu/doctrine-orm-entity-finder

Boilerplate for building finder classes to be used with Doctrine ORM

  • Tuesday, November 28, 2017
  • by Kyoushu
  • Repository
  • 1 Watchers
  • 0 Stars
  • 227 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 1 Versions
  • 6 % Grown

The README.md

Doctrine ORM Entity Finder

Build Status, (*1)

Boilerplate for building finder classes to be used with Doctrine ORM, (*2)

Class Example

<?php

namespace App;

use Kyoushu\DoctrineORMEntityFinder\Test\AbstractFinder;
use Doctrine\ORM\QueryBuilder;

class MyFinder extends AbstractFinder
{

    protected $name;

    public function getName()
    {
        return $this->name;
    }

    public function setName($name)
    {
        $this->name = $name;
        return $this;
    }

    public function getParameterKeys()
    {
        return array('name');
    }

    public function getEntityClass()
    {
        return 'App\Entity\MyEntity';        
    }

    public function configureQueryBuilder(QueryBuilder $queryBuilder)
    {
        $name = $this->name;
        if($name){
            $queryBuilder->andWhere('entity.name = :name');
            $queryBuilder->setParameter('name', $name);
        }
    }

}

Usage Example

<?php

namespace App;

use Kyoushu\DoctrineORMEntityFinder\FinderFactory;

// Create finder factory
$factory = new FinderFactory($entityManager);

// Register finder class
$factory->registerFinder('my_finder', 'App\MyFinder');

// Create finder and configure it to find entities named Foo
$finder = $factory->createFinder('my_finder');
$finder->setPage(1)->setPerPage(5)->setName('Foo');

// Get search results
$result = $finder->getResult();

// Generate a URL using parameters from the finder
$url = $router->generate('search', $finder->getRouteParameters());

The Versions

28/11 2017

dev-master

9999999-dev

Boilerplate for building finder classes to be used with Doctrine ORM

  Sources   Download

MIT

The Requires

 

The Development Requires

by James Willans