Size: a a a

2021 January 13

VC

Vladimir Chernyshev in PHP
чтобы анализатор знал, что методы \Backend\Behaviors\FormControlle есть в текущем классе
источник

КГ

Константин Грачев... in PHP
Vladimir Chernyshev
чтобы анализатор знал, что методы \Backend\Behaviors\FormControlle есть в текущем классе
@mixin \Backend\Behaviors\FormControlle над классом попробуй
источник

КГ

Константин Грачев... in PHP
Vladimir Chernyshev
чтобы анализатор знал, что методы \Backend\Behaviors\FormControlle есть в текущем классе
А в чём смысл динамики?
источник

VC

Vladimir Chernyshev in PHP
Константин Грачев
А в чём смысл динамики?
CMS, плагины расширяют функциональность базовых классов и классов других плагинов через магические методы
источник

VC

Vladimir Chernyshev in PHP
Константин Грачев
@mixin \Backend\Behaviors\FormControlle над классом попробуй
спасибо, гляну, как-то инстинктивно после руби пропускал )
источник

КГ

Константин Грачев... in PHP
Vladimir Chernyshev
CMS, плагины расширяют функциональность базовых классов и классов других плагинов через магические методы
То есть если FormControlle будет скажем трейтом то заюзав его тот же результат не получится?
источник

VC

Vladimir Chernyshev in PHP
я вообще на симфони мечтаю переписать, но уже не уверен доживу ли хотя бы до первых шагов )
источник

КГ

Константин Грачев... in PHP
Vladimir Chernyshev
public $implement = [
   'Backend.Behaviors.FormController',
];

а вот как анализатору обїяснить? )
Ну то есть динамика для меня это то что в рантайме происходит, если там юзер в админке конструктор собирает.
А тут не очень понятно, почему
public $implement = [
   'Backend.Behaviors.FormController',
];

нельзя поменять на
use \Backend\Behaviors\FormControlle
источник

VC

Vladimir Chernyshev in PHP
Константин Грачев
То есть если FormControlle будет скажем трейтом то заюзав его тот же результат не получится?
в теории может и получится, но это класс цмски и там куча магии по генерации форм админки
источник

VC

Vladimir Chernyshev in PHP
насколько помню доку, там эти штуки типа трейтов нос изоляцией скоупов
источник

VC

Vladimir Chernyshev in PHP
в общем субъективно проще на симфу переписать, чем ломать эту архитектуру
источник

VC

Vladimir Chernyshev in PHP
обновления же надо будет тянуть
источник

ИЛ

Иван Лещёв in PHP
Vladimir Chernyshev
в общем субъективно проще на симфу переписать, чем ломать эту архитектуру
с этого надо начинать!
источник

KN

Kirill Nesmeyanov in PHP
Vladimir Chernyshev
там архитектура такая, что придётся всё подавлять или штуки типа
/** @var User */ $user = User::find(1); 

⎄делать
Не надо
источник

KN

Kirill Nesmeyanov in PHP
пишешь phpstub файл, где тупо дженерик
источник

AD

Andrey Dembitskyi in PHP
Константин Грачев
Ну то есть динамика для меня это то что в рантайме происходит, если там юзер в админке конструктор собирает.
А тут не очень понятно, почему
public $implement = [
   'Backend.Behaviors.FormController',
];

нельзя поменять на
use \Backend\Behaviors\FormControlle
Они могут ещё подписыватся на события и изменять модель...
источник

KN

Kirill Nesmeyanov in PHP
public static function find(): static
источник

KN

Kirill Nesmeyanov in PHP
типа такого, даже дженерики не нужны
источник

KN

Kirill Nesmeyanov in PHP
короче, я к тому, что всю магию можно в стабах описать и всё
источник

KN

Kirill Nesmeyanov in PHP
хотя да, с 'Backend.Behaviors.FormController', траблы могут возникнуть, т.к. это некорректный fqn
источник