Size: a a a

2020 January 15

SS

Serg Serdyuk in Laravel Pro
а как определяешь что не детачит? в БД deleted_at не проставляется?
источник

DZ

Daniil Zobov in Laravel Pro
именно так
источник

DZ

Daniil Zobov in Laravel Pro
если удаляю softdeleted - удаляет запись
источник

SS

Serg Serdyuk in Laravel Pro
хы, странно.. а если в отношении дописать withPivot('deleted_at')?
//надо протестить, я подобное реализовывал ручками
источник

D

Dymon in Laravel Pro
Daniil Zobov
Есть отношение ManyToMany и связующая Pivot модель.
В Pivot модели use SoftDeletes

Проблема в том, что sync() только добавляет, но не удаляет. Что я пропустил?
из коробки такое не поддерживается, нужно деалать самому https://stackoverflow.com/questions/17350072/soft-delete-on-a-intermediate-table-for-many-to-many-relationship https://github.com/laravel/framework/issues/14008
источник

y

yu2ry in Laravel Pro
Daniil Zobov
Есть отношение ManyToMany и связующая Pivot модель.
В Pivot модели use SoftDeletes

Проблема в том, что sync() только добавляет, но не удаляет. Что я пропустил?
если у тебя есть расхождения, допустим было 1 2 3 4, а станет 3 4 5 6, то 1 2 3 удалится, это есть в каробке
источник

y

yu2ry in Laravel Pro
Daniil Zobov
Есть отношение ManyToMany и связующая Pivot модель.
В Pivot модели use SoftDeletes

Проблема в том, что sync() только добавляет, но не удаляет. Что я пропустил?
wherePivotSoftDelete
источник

DZ

Daniil Zobov in Laravel Pro
yu2ry
если у тебя есть расхождения, допустим было 1 2 3 4, а станет 3 4 5 6, то 1 2 3 удалится, это есть в каробке
с SoftDeletes sync работает только на аттач
источник

y

yu2ry in Laravel Pro
yu2ry
wherePivotSoftDelete
как то так (просто псевдо код)
источник

y

yu2ry in Laravel Pro
Daniil Zobov
с SoftDeletes sync работает только на аттач
а если на связи поставить where?
источник

DZ

Daniil Zobov in Laravel Pro
пардон, я не туда смотрел. deleted_at проставляется, но связь все равно отображается
источник

DZ

Daniil Zobov in Laravel Pro
уже проще, спасибо)
источник

SS

Serg Serdyuk in Laravel Pro
а, если проставляется - то в отношении whereNull('pivot_table.deleted_at')
источник

zN

zVlad Nesquik in Laravel Pro
Переслано от zVlad Nesquik
Привет :)
Есть три таблицы, связь многие-ко-многим. Таблицы country и post.
Как мне постоить запрос? Надо мне выбрать страну (country: id, name), где name = ua и выбрать автора публикации (post: id, author, story), где author = admin.
Помогите построять запрос. Что то вобще не пойму.
источник

DZ

Daniil Zobov in Laravel Pro
Serg Serdyuk
а, если проставляется - то в отношении whereNull('pivot_table.deleted_at')
вообще разве trait SoftDeletes не делает это из коробки?
источник

zN

zVlad Nesquik in Laravel Pro
Так же в таблице post еще есть условия where
источник

SS

Serg Serdyuk in Laravel Pro
Daniil Zobov
вообще разве trait SoftDeletes не делает это из коробки?
для связующих таблиц не делает(
источник

zN

zVlad Nesquik in Laravel Pro
zVlad Nesquik
Переслано от zVlad Nesquik
Привет :)
Есть три таблицы, связь многие-ко-многим. Таблицы country и post.
Как мне постоить запрос? Надо мне выбрать страну (country: id, name), где name = ua и выбрать автора публикации (post: id, author, story), где author = admin.
Помогите построять запрос. Что то вобще не пойму.
Т.е. мне надо выбрать страну, потом публикации которые пренадлежат этой стране и из них еще доп.условия.
источник

SS

Serg Serdyuk in Laravel Pro
zVlad Nesquik
Т.е. мне надо выбрать страну, потом публикации которые пренадлежат этой стране и из них еще доп.условия.
ну создать все нужные связи, а потом в with() все условия
я так полагаю что связи будут
Country hasMany Author
Author hasMany Post

и таблицы лучше во множественном числе сразу привыкать называть
источник

zN

zVlad Nesquik in Laravel Pro
Пофиг на названия. Это просто для примера
источник