169 похожих чатов

Тип в дтошке есть свойства и они все по дефолту

null. Но как понять было ли оно реально засечено со значением null или это дефолтный нал?

24 ответов

17 просмотров

А на что это у тебя влияет? Ну допустим у тебя дефолтное значение и там и там null. Какая разница откуда он у тебя пришел?

N-M Автор вопроса
Sergey Shitikov
А на что это у тебя влияет? Ну допустим у тебя деф...

Предположим в dto у меня есть toArray который возражает ассоциативный массив (свойства dto объекта) я его кладу сразу в модель и сохраняю. Таким образом мои не заполненные поля с null попадут в таблицу. Но такого быть не должно.

N M
Предположим в dto у меня есть toArray который воз...

а если они у тебя не заполнены, там что должно быть в БД по твоей логике вместо null?

Sergey Shitikov
а если они у тебя не заполнены, там что должно быт...

Я так понимаю речь о дто на апдейт, и как определить действительно ли там нулл надо поставить, или этот нулл - потому что в дто не передали значение Можно в сеттере писать изменённые поля в отдельный массив, и проверять их по необходимости каким-нибудь isDefault методом... Или совсем не пускать дефолтные данные в toArray.. В зависимости от ситуации

Alex
Я так понимаю речь о дто на апдейт, и как определи...

ну а на что это повлияет? если по логике важно уметь отличать состояние "нет данных" от состояния "по умолчанию", то наверное, поле в бд должно быть not null. А если разницы нет, то можно просто писать null вне зависимости от того, это "нет данных" или это "данные по умолчанию"

N-M Автор вопроса
Alex
Я так понимаю речь о дто на апдейт, и как определи...

В точку. Но решение мне кажется очередным костылем.

Sergey Shitikov
ну а на что это повлияет? если по логике важно уме...

Тем, что данные могут быть в базе, но не в пришедшем апдейт реквесте И если делать тупой ->fill(dto->toArray()) - не пришедшие данные будут заменены на null в базе, что не совсем корректно

N M
В точку. Но решение мне кажется очередным костылем...

Не знаю решения лучше, в защиту этого - лара использует нечто подобное в моделях, isDirty, например

Alex
Тем, что данные могут быть в базе, но не в пришедш...

а, понял. Ну как по мне лучше мониторить измененные поля и только их в toArray возвращать

Alex
Тем, что данные могут быть в базе, но не в пришедш...

Вообще такое заполнение полей модели это плохая практика) Зачем тебе дто вообще, если ты его свойства завязывать на поля базы данных ) Дто - это абстракция, которая должна просто принять данные и доставить до точки, где эти данные будут использованы. А у тебя получается, что если изменится название поля в бд, то твоя дто станет причиной проблемы)

E V.
Вообще такое заполнение полей модели это плохая пр...

Окей, поменяй ->fill на целую кучу model->field1 = dto->getField1 Суть вопроса сабжа останется такой же, только пример раздуется)

E V.
По сабжу выше ответили)))

Ну по использованию филов согласен, я использую это напрямую с реквестами лары в тех модулях, которые нужно "присрать" по быстрому. Для прототипирования маленьких приложулек, если угодно

Alex
Окей, поменяй ->fill на целую кучу model->field1 ...

Мы в 2023, геттеры в ДТО уже не нужны

Потому что есть readonly

Артём
Потому что есть readonly

Это я знаю, а как свойства извлекать без геттера ?)

E V.
Это я знаю, а как свойства извлекать без геттера ?...

Зачем их «извлекать», если они публичные?

Артём
Зачем их «извлекать», если они публичные?

Типо делаем readonly класс свойства объявляем публичными, автомашин используем как $class->property?

Артём
Кто такой «автомашин»?

Не было такого ) ты о чем ?))

E V.
Не было такого ) ты о чем ?))

«У меня все ходы записаны»©

Артём
Да

Понял ) Я 8 пыху только начал немного щупать )

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Кто-нибудь решал проблему с автоматическим скроллингом к выбранной ячейке в TDBGrid в Lazarus? Проблема в том, что есть допустим 3 столбца, третий столбец виден наполовину, вк...
Дмитрий Логинов
1
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Чорт! Чорт! Чорт! Стала ставить через GetIt (написано же, что ручками не рекомендуется) Сломалось на дублировании моей TSkLabel. Чтож мне ее по всем проектам переименовывать в...
Катерина Свиридова
7
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
Hey someone plz help to resolve my issue here is my table... Log { id user_id type target_ct target_obj_id action_ct action_obj_id workspace_id created_at } i wanna fil...
Rahul Singh
1
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Карта сайта