По дефолту в доктрине ленивая загрузка. Если ленивую загрузку нужно часто использовать, то это оправдано, просто в частных случаях используем $qb->join('relation'). Если же нужна жадная загрузка по дефолту то просто используем атрибут fetch EAGER #[ORM\ManyToMany(targetEntity: Entity::class, mappedBy: 'entities', fetch: 'EAGER')] И уже это будет работать без QueryBuilder
Для wordpress есть wpackagist, но к сожалению это никак не решает проблему неймспейсов. Можно только надеяться на чудо, что нет пересечения неймспейсов с плагинами, которые ты используешь. На практике если использовать актуальные версии популярных плагинов, то проблем особо не возникает. Уже около 10 проектов мной было интегрирован Symfony фреймворк с Wordpress и пока работает все стабильно.
Судя по скриншотам, он просто скачивает какой-то готовый образ и переименовывает его? Где сам процесс сборки? Что он вообще может кроме использования готовых образов?
А что мы будем делать, если придумаем ещё один вид платежа? Будем вводить ещё один класс? А если мы хотим сделать это (ввести новый вид платежа) без перекомпиляции приложения?
В данной статье приводится пример расширения через использование паттерна "стратегия". Для ваше примера расширения нужно использовать другой подход, уже не используя расширение через ввод новых классов
Хочу сказать по поводу вордпреса, так как много ресурсов на нем мне приходиться поддерживать. Само ядро действительно осталось на уровне PHP 5.2, но ничего не мешает использовать его с современным PHP 8.3. Например, можно весь проект на wordpress и все нужные плагины поднять и управлять через composer (wpackagist) также можно прикрутить к нему symfony компоненты, например использовать тот же dependency injection и разрабатывать все нужные плагины уже как в полноценном symfony фреймворке через папочку src. Можно использовать phpunit. Надеюсь в WordPress комьюнити смогут ядро доработать таким образом, чтобы оно из коробки могло все это делать
Так ведь раньше для этого требовалось 1000 попыток для выдачи правильного ответа, потом 100, сейчас 10. Таким образом это "Нафига нам нейросеть" перетекает в "Почему ты до сих пор не используешь нейросеть"
Года 2 или 3 назад наблюдал проблему с производительностью файловой системы, нельзя было использовать GPU из wsl и разные мелкие проблемы. С год назад или больше работать стало почти также комфортно как в нативной ubuntu
Про длительность приема с вами не соглашусь. Несколько месяцев назад нужно было удалять 2 зуба мудрости. На приеме у хирурга по записи ОМС мне отказались удалить 2 зуба, так как сказали, что на прием выделяют по 15 минут на человека( что ближе к 12 минутам ТС чем к вашим 20 минут) и за это время не успеем, либо записываться отдельно на другой день, либо сейчас удалять 1 зуб а потом другой. В итоге просто в другой день перезаписали, удалили бесплатно.
Я имел ввиду то, что нельзя просто делать `git pull` и считать, что все обновилось. Я не знаю, есть ли консольная команда, которая может обновить проект Wordpress‑а.
Можно использовать composer и устанавливать wordpress вот так: composer require johnpbloch/wordpress если нужно изменить версию wp то пишем composer require johnpbloch/wordpress:6.0.1, с плагинами аналогично composer require wpackagist-plugin/akismet.
Почему нельзя добавить логику и данные которые будут идти в разрез с БД? Как раз таки можно добавить любые данные и любую логику в разрез с бд. Так-же имена свойств сущностей могут не совпадать с именем поля в бд. Общего у него с ActiveRecords только то что сущность имеет данные и поведение судя по вашей ссылке в определении Мартина. То что в доктрине по Мартину Фаулеры больше похоже на это https://martinfowler.com/eaaCatalog/dataMapper.html. Так же хочу заметить, что бывают случаи когда одна сущность имеет несколько представлений не только в одной бд, но и в нескольких, например в postgreSql и mongoDb. И доктрина с этим очень хорошо работает с помощью ORM и ODM
в гексагональная архитектуре, слово гексагональный указано условно, что архитектура имеет много граней. Эта архитектура имеет альтернативное название - архитектура портов и адаптеров.
Я не работал с питоном и в частности torch. Распознаванием машин занимался отдельный сервис deepstack. Ui разметки, API, бизнес-логика приложения писалась своя
Но бывают очень большие машины - например грузовики, которые полностью перекрывают парковочное место, в таких случаях даже человек не определит есть ли там свободное место
Как аналог вебсокетам можно использовать Mercure
По дефолту в доктрине ленивая загрузка. Если ленивую загрузку нужно часто использовать, то это оправдано, просто в частных случаях используем $qb->join('relation'). Если же нужна жадная загрузка по дефолту то просто используем атрибут fetch EAGER
#[ORM\ManyToMany(targetEntity: Entity::class, mappedBy: 'entities', fetch: 'EAGER')]И уже это будет работать без QueryBuilderPhpstorm точно может, pycharm скорее всего тоже
Для wordpress есть wpackagist, но к сожалению это никак не решает проблему неймспейсов. Можно только надеяться на чудо, что нет пересечения неймспейсов с плагинами, которые ты используешь. На практике если использовать актуальные версии популярных плагинов, то проблем особо не возникает. Уже около 10 проектов мной было интегрирован Symfony фреймворк с Wordpress и пока работает все стабильно.
Это N+1 легко решается, например через QueryBuilder
Судя по скриншотам, он просто скачивает какой-то готовый образ и переименовывает его? Где сам процесс сборки? Что он вообще может кроме использования готовых образов?
В данной статье приводится пример расширения через использование паттерна "стратегия". Для ваше примера расширения нужно использовать другой подход, уже не используя расширение через ввод новых классов
Хочу сказать по поводу вордпреса, так как много ресурсов на нем мне приходиться поддерживать. Само ядро действительно осталось на уровне PHP 5.2, но ничего не мешает использовать его с современным PHP 8.3. Например, можно весь проект на wordpress и все нужные плагины поднять и управлять через composer (wpackagist) также можно прикрутить к нему symfony компоненты, например использовать тот же dependency injection и разрабатывать все нужные плагины уже как в полноценном symfony фреймворке через папочку src. Можно использовать phpunit. Надеюсь в WordPress комьюнити смогут ядро доработать таким образом, чтобы оно из коробки могло все это делать
Так ведь раньше для этого требовалось 1000 попыток для выдачи правильного ответа, потом 100, сейчас 10. Таким образом это "Нафига нам нейросеть" перетекает в "Почему ты до сих пор не используешь нейросеть"
Года 2 или 3 назад наблюдал проблему с производительностью файловой системы, нельзя было использовать GPU из wsl и разные мелкие проблемы. С год назад или больше работать стало почти также комфортно как в нативной ubuntu
Про длительность приема с вами не соглашусь. Несколько месяцев назад нужно было удалять 2 зуба мудрости. На приеме у хирурга по записи ОМС мне отказались удалить 2 зуба, так как сказали, что на прием выделяют по 15 минут на человека( что ближе к 12 минутам ТС чем к вашим 20 минут) и за это время не успеем, либо записываться отдельно на другой день, либо сейчас удалять 1 зуб а потом другой. В итоге просто в другой день перезаписали, удалили бесплатно.
Я имел ввиду то, что нельзя просто делать `git pull` и считать, что все обновилось. Я не знаю, есть ли консольная команда, которая может обновить проект Wordpress‑а.
Можно использовать composer и устанавливать wordpress вот так:
composer require johnpbloch/wordpressесли нужно изменить версию wp то пишемcomposer require johnpbloch/wordpress:6.0.1, с плагинами аналогичноcomposer require wpackagist-plugin/akismet.Почему нельзя добавить логику и данные которые будут идти в разрез с БД? Как раз таки можно добавить любые данные и любую логику в разрез с бд. Так-же имена свойств сущностей могут не совпадать с именем поля в бд. Общего у него с ActiveRecords только то что сущность имеет данные и поведение судя по вашей ссылке в определении Мартина. То что в доктрине по Мартину Фаулеры больше похоже на это https://martinfowler.com/eaaCatalog/dataMapper.html. Так же хочу заметить, что бывают случаи когда одна сущность имеет несколько представлений не только в одной бд, но и в нескольких, например в postgreSql и mongoDb. И доктрина с этим очень хорошо работает с помощью ORM и ODM
https://www.doctrine-project.org/projects/doctrine-mongodb-odm/en/2.5/index.html
https://www.doctrine-project.org/projects/doctrine-orm/en/latest/index.html
Маппер находится вне этих сущностей, этим занимается доктрина. А где здесь ActiveRecorsd?
Ваш комментарий вообще мимо. В доктрине как раз не используется ActiveRecord а DataMapper. Так что с этим как раз все в порядке
А еще лучше бы назвать contains
в гексагональная архитектуре, слово гексагональный указано условно, что архитектура имеет много граней. Эта архитектура имеет альтернативное название - архитектура портов и адаптеров.
Я не работал с питоном и в частности torch. Распознаванием машин занимался отдельный сервис deepstack. Ui разметки, API, бизнес-логика приложения писалась своя
Но бывают очень большие машины - например грузовики, которые полностью перекрывают парковочное место, в таких случаях даже человек не определит есть ли там свободное место