Size: a a a

2021 April 26

DT

Dmitriy Tkachenko in PHP
зачем этому расти в конкурента ОРМ, если это тот же механизм, который используется ОРМкой и плюс они в одном и том же прожект неймспейсе
источник

AD

Andrey Dembitskyi in PHP
Потому что это out of scope DBAL.
источник

AD

Andrey Dembitskyi in PHP
DBAL предоставляет возможности абстрагирования от БД.
Каждый может использовать это так, как нужно ему.

ORM - для маппинга на объекты, другие для взаимодействия с БД без маппинга
источник

DT

Dmitriy Tkachenko in PHP
значит размапливание типов в bindParam - это in the scope, а обратное out of scope?
источник

AD

Andrey Dembitskyi in PHP
Угу
источник

DT

Dmitriy Tkachenko in PHP
почему тогда правила маппинга на объект наследуют Doctrine\DBAL\Type? это ж out of scope
источник

AD

Andrey Dembitskyi in PHP
какие правила маппинга?
Не понимаю
источник

DT

Dmitriy Tkachenko in PHP
кастомные типы
источник

DT

Dmitriy Tkachenko in PHP
кастомные типы используются в ДБАЛ, но не используются в ДБАЛ, потому что out of scope, очень очевидно и очень понятно)
источник

DT

Dmitriy Tkachenko in PHP
я создал схему с использованием кастомных типов, но получить резалт сет с кастомными типами не могу
источник

AD

Andrey Dembitskyi in PHP
Кастомные типы могут быть зарегистированы в DBAL и использоватся сразу для сериализации в типы БД, поскольку ему говорят какой bind parameter имеет какой тип.

Для десериализации они не будут использоватся в DBAL, поскольку для DBAL неизвестны типы.
источник

DT

Dmitriy Tkachenko in PHP
как это блин неизвестны? я registerType у дбала зачем вызываю? не для того чтобы они стали известны дбалу?
источник

AD

Andrey Dembitskyi in PHP
я говорю о том, что он не знает какой тип нужно использовать для id, какой для name, какой для data

SELECT id, name, data FROM table
источник

DT

Dmitriy Tkachenko in PHP
$dbal->query('SELECT id, name, data FROM table')->setResultSetMapping('id', MyType::ID)
источник

DT

Dmitriy Tkachenko in PHP
хотябы как-то так было бы достаточно удобно
источник

DT

Dmitriy Tkachenko in PHP
Ну банально, я могу указать тип datetime, я могу заинсертить объект \DateTime(), но получить из этой же колонки я могу только строку
источник

AD

Andrey Dembitskyi in PHP
Да, было бы удобно. Кто-то хочет написать RFC issue в DBAL?
источник

DT

Dmitriy Tkachenko in PHP
я б написал, но не умею)
источник

SP

Sergey Protko in PHP
направления зависимостей не про папки. Достаточно просто что бы у тебя эти слои в разных модулях лежали. Все стрелочки при этом одинаково выглядят
источник

SP

Sergey Protko in PHP
если тебе так проще настраивать линтеры что б определять что есть что - можно такую структуру внутри фичи делать если очень хочется.
источник