Я разрабатываю пакет, который динамически добавляет методы, поэтому я должен переопределить метод __call в модели eraquent laravel.Я пишу это как черту, и она работает, но если модель использует другую черту, которая также переопределяет __call, они выдают ошибку с сообщением: «Метод черты __call не был применен, потому что есть столкновения с другими методами черты»
мой код черты выглядит примерно так:
trait HasX
{
public function __call($name, $arguments)
{
if($name== 'x') return 'x';
return self::__call($name, $arguments);
}
}
Он работает отлично, но если я использую другую черту, которая также отменяет эту ошибку.Например:
trait HasY
{
public function __call($name, $arguments)
{
if($name== 'y') return 'y';
return self::__call($name, $arguments);
}
}
Как правильно этого добиться?