Comments 30
Отличные новости, ждём пакет с адаптацией CycleORM под Yii3! т.к. нам в Yii2 не хватает полноценной ORM, которая реализована по модели DataMapper. Так-же кому интересно про ЭФКО можно подробней ознакомиться на Хабр.Карьера https://career.habr.com/companies/efko
В целом рабочее решение, позволяет работать с Cycle ORM в Yii 2.
https://github.com/yiisoft/yii-cycle, в принципе, рабочий уже. Но пока не тегнут.
Искренне не понимаю, зачем нужен этот бестолковый фреймворк, напичканный антипаттернами со всех сторон.
А можно указать на конкретные антипаттерны в коде Yii 3? Сейчас самое время, успеем поправить, если что.
Улучшены ошибки DI контейнера
Опечатка .
Просто из шаблона DDD не понять. Толку не будет. В документации опишем как надо, дадим ссылок.
Будет ли какой-то шаблон приложения с примером нормальной архитектуры
В Yii самая подходящая архитектура такая. Есть контроллеры, в них через DI передаются сервисы, в методах контроллера вызываются методы сервиса, в методы сервиса передается валидированная форма, соответствующая действию которое вы хотите совершить. Для списка например там будет форма с фильтром, для создания/редактирования форма с полями сущности, которые пользователь может ввести в интерфейсе. Сервис это просто ваш класс с логикой обработки, который вы сами написали. Бизнес-логику в сущностях AR не стоит писать, они плохо для этого подходят. Названия полей с переводом тоже, их надо писать в классах форм, а не в классах ActiveRecord, которые в базу сохраняются. Логика в сервисах, валидация в формах. Это удобное правило, которое будет работать в любом фреймворке.
Ну я могу сказать только, что "логика в сервисах" это работает. Со временем я пришел к выводу, что так удобнее. Это не только логика, которая затрагивает несколько сущностей, это еще и создание/удаление. Сущность не может сама себя создавать и удалять, значит этот код должен быть где-то еще, а редактирование удобнее делать там же, где и создание. И зависимости в сервисы пробрасывать проще, чем в сущности.
Yii 3
Прежде всего, релизы:
В каждом пакете есть документация, отличное покрытие тестами, код вычищен и, конечно же, публичный API достаточно стабилен.
Блин, ребята, пока вы Yii 3 делали, я уже 2 работы сменил. На первой из них мы всерьез рассматривали Yii как фреймворк для нового проекта, но решили делать на Laravel, потому что у вас были непонятные перспективы когда вы это всё закончите.
Мне кажется, вам надо было бы сделать только ORM и GridView с новой архитектурой, и сразу выпустить первую версию, остальное бы вам сообщество сделало кому что надо. Но вы решили всё делать сами, и это проблема, это непонятные сроки разработки и непонятные перспективы развития.
Александр, какие у вас планы по yii-mongodb? Есть надежда на релиз этого пакета и насколько жестоко он будет связан с основным пакетом ActiveRecord для реляционных бд? По личным впечатлениям yii2-mongodb до сих пор единственная адекватная ORM для работы с монго без существенных костылей.
М… А как же официальный SDK? Костыли?
Если вы про MongoDB PHP Library, то я не могу отнести ее к разряду ORM.
Ясно. Если релиз будет, то будет связан с основным AR. Именно так было в Yii 2.
Действительно странно. Проверим. Спасибо.
Так и надо:
Normalizes keys returned from apcu_fetch() in multiple mode. If one of the keys is an integer (123) or a string representation of an integer ('123') the returned key from the cache doesn't equal neither to an integer nor a string ($key !== 123 and $key !== '123'). Coping element from the returned array one by one to the new array fixes this issue.
Спасибо Вам огромное и Картику. Вы с ним не сотрудничаете?
Новости Yii 2021, выпуск 1