Size: a a a

2020 July 27

ŹR

Źmićer Rubinštejn in pro.elixir
Складывается ощущение, что ты первый ее так пытаешься решить
источник

MS

Mikhail Spiridonov in pro.elixir
Максим Барулин
складывается ощущение, что я первый у кого такая проблема возникла
Если хочешь не удалять, то просто не удаляй. Если хочешь обновить, то просто обнови. Не надо одно подменять другим, тем более неявно
источник

МБ

Максим Барулин... in pro.elixir
для юзера это удаление
источник

LL

Lama Lover in pro.elixir
Максим Барулин
или никто не парится и каскадными ключами всё нахрен выпиливает из бд?
Есть флажки on_delete в scheme
Можно перегрузить Repo.delete
Лучше всего переписать вызовы Repo.delete на Repo.update(deleted: true) # не знаю можно ли так ...
источник

PG

Pig Greenest in pro.elixir
Lama Lover
Может развоение личности, а над такими людьми лучше не шутить
Крикнул
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если ты хочешь, чтобы при mark _as_deleted каскадом вниз все так-же захерачивалось в deleted - есть два способа. Способ 1 - это триггер в бд. Способ 2 - скачивать сперва из БД, а потом запросами обновлять.
То, что доктрина под капотом это делает - радуйся что ты не там. Потому что видимо она это делает не оптимально, а на крайниий случай not explicit
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Допустим A has many B has many C

Тебе надо всего лишь 2 запроса херануть, чтобы все обновить
источник

ŹR

Źmićer Rubinštejn in pro.elixir
update B where B.a_id = id set deleted_at now()

update C join B on C.b_id = B.id where B.a_id = id set deleted_at now()
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если это называется огород - то я хз конечно
источник

МБ

Максим Барулин... in pro.elixir
но сначала надо понять, а нужно ли это вообще, посчитав дифы на двух уровнях
источник

МБ

Максим Барулин... in pro.elixir
короче, я понял
источник

МБ

Максим Барулин... in pro.elixir
в очередной раз проблема возникла только у меня
источник

МБ

Максим Барулин... in pro.elixir
наверно, я чего-то пока не понял в этой жизни...
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Про дифы я не понимаю до сих пор
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если 1-*, то как бы корень дерева все определяет целиком
источник

МБ

Максим Барулин... in pro.elixir
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если у тебя *-* - то я хз
источник

МБ

Максим Барулин... in pro.elixir
оно приходит сразу, и надо посчитать разницу, сначала в вовпросах, потом в ответах
источник

МБ

Максим Барулин... in pro.elixir
если удалили вопрос - пометить и вопрос и его ответы удалёнными
если удалили ответ какого-то вопроса, то пометить только этот ответ
источник

МБ

Максим Барулин... in pro.elixir
а ещё для полного счастья, там может добавить новый вопрос со своими ответами
источник