Skip to content

Latest commit

 

History

History
37 lines (31 loc) · 739 Bytes

File metadata and controls

37 lines (31 loc) · 739 Bytes

Repositories

Define a repository

/**
 * @extends GraphqlEntityRepository<Task>
 * @method Task[] findAll()
 * @method Task[] findBy(array $criteria)
 */
class TaskRepository extends GraphqlEntityRepository
{
    public function __construct(GraphqlManager $manager)
    {
        parent::__construct($manager, Task::class);
    }
}

Built-in methods

// Fetch all entities
$tasks = $repository->findAll();

// Filter by criteria
$tasks = $repository->findBy(['status' => 'active']);

// Custom query via Query Builder
$qb = $repository->createQueryBuilder();
$tasks = $qb
    ->select('title', 'user.name')
    ->where($qb->expr()->eq('status', 'active'))
    ->limit(10)
    ->getQuery()
    ->getResult();