Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 04.04.2019 22:36:47

Модульность

Привет!
Хочу реализовать модульность - распихать по папкам.
Например:
- Modules
-- User
-- Blog
-- Article

В каждом модуле есть модель User
в User - основная
в остальных - добавляющая связи с моделями Blog и Article, соответственно.

class BlogUser extends \App\Modules\User\User {
    public function blogs()
    {
        return $this->hasMany('App\Modules\Blog\Blog', 'user_id', 'id');
    }
}

Вопрос такой - как "главная" модель \App\Modules\User\User узнает о дочерних моделях?
В какой момент их подгружать и как? Или в какую сторону "курить"..
Подскажите, пожалуйста ))

Не в сети

#2 05.04.2019 06:46:48

Re: Модульность

Никак не узнает, т.к. другая модель это другая модель. Вы придумали что-то нерабочее.
Все связи должны быть описаны в том классе, который у вас "главный".

Я нагуглил похожие хотелки на SO: https://stackoverflow.com/q/52707380/272885
Там также нет решения, но сами рассуждения будут вам полезны.


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#3 05.04.2019 10:23:46

Re: Модульность

Спасибо! ))
Нашел еще пакет https://github.com/greabock/tentacles
и статья в тему https://gist.github.com/greabock/48787baab768b519f21c
Но почитал про DDD и уже передумал так делать ))

Не в сети

#4 12.04.2019 19:30:19

Re: Модульность

С самого начала пержу - перед вопросом информируйте о цели вашего "изобретения".
Если энтузиазм то это одни ответы, а если продакшен/работа то это уже другие ответы на ваши вопросы.

Не в сети

Подвал раздела