orion76 / projectman

Project Management System
GNU General Public License v2.0
1 stars 0 forks source link

Method does not exist[BUG] #26

Open dashiwa opened 5 years ago

dashiwa commented 5 years ago

The website encountered an unexpected error. Please try again later.

ReflectionException: Method Drupal\etree\Controller\ETreeController::collectionOverview() does not exist in ReflectionMethod->__construct()

dashiwa commented 5 years ago

@orion76 По зависимостям непонятно etree сущность является базовой сущностью значит она не должна ни от кого зависеть? Ну если только не делать инверсию зависимостей Я бы предложил перерабоать этот модуль чтобы контроллер не зависел от метода находящегоса в etree_links модуле

orion76 commented 5 years ago

Про это и был рефакторинг-) И еще придется "порефакторить" Да сущность etree должна быть полностью "автономна".. А весь дополнительный функционал дополнительными связанными модулями.

Просто сначала реализовывался "частный" случай ее использования.. Понемногу появляется понятие как сделать более универсально.

Сейчас думаю надо сделать так чтобы модуль сущности etree предоставлял только саму сущность и API для работы с ней (загрузка-сохранение сущностей в БД)

Еще пришел к такому выводу что бандлы сущности etree должна храниться в отдельных таблицах БД. Чтобы в пределах приложения не смешивать "разнотипные" данные.

dashiwa commented 5 years ago

Еще пришел к такому выводу что бандлы сущности etree должна храниться в отдельных таблицах БД. Чтобы в пределах приложения не смешивать "разнотипные" данные.

В рамках апи это возможно? Аннотации затрудняют дебаг данной темы. Тем более большую часть аннотаций 80 процентов не добавили в класс Annotation для документирования.

Но в рамках ООП подхода мне кажется что это возможно. Нужно только найти метод сохраняющий схему данных в бд и попробовать перегрузить его, при условии что там нет кучи зависимого кода который придеться дорабатывать

dashiwa commented 5 years ago

По аннотациям. Это свойства классов которые в целом распиханы по разным классам

orion76 commented 5 years ago

В рамках апи это возможно?

В drupal 8 возможно все: 1.Добавить новый функционал (кастомные сервисы, плагины) 2.Добавить функционал к ядерным и контрибным сервисам-плагинам (хуки,события,деривативы, "усилители"(Enhancer) и т.п.) 3.Преопределить ядерные-контрибные сервисы.

  1. и еще куча всего, разобраться или как минимум познакомиться с чем еще не дошли руки-)