Я работаю с Symfony 4, у меня много репозиториев с обычным поведением, поэтому я хочу избежать повторного кода.Я попытался определить родительский класс репозитория следующим образом:
<?php
namespace App\Repository;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Symfony\Bridge\Doctrine\RegistryInterface;
class AppRepository extends ServiceEntityRepository {
public function __construct(RegistryInterface $registry, $entityClass) {
parent::__construct($registry, $entityClass);
}
// Common behaviour
}
Так что я мог бы определить его дочерние классы, например:
<?php
namespace App\Repository;
use App\Entity\Test;
use App\Repository\AppRepository;
use Symfony\Bridge\Doctrine\RegistryInterface;
class TestRepository extends AppRepository {
public function __construct(RegistryInterface $registry) {
parent::__construct($registry, Test::class);
}
}
Но я получаю эту ошибку:
Невозможно автоматически подключить службу "App \ Repository \ AppRepository": аргумент "$ entityClass" метода "__construct ()" должен иметь подсказку типа или явно указывать значение.
Я пытался установить тип подсказки типа string
, object
, но это не сработало.
Есть ли способ определить универсальный репозиторий?
Заранее спасибо