更新模型並同步關係時,如果我沒有傳入所有已存在的ID,那麼該關係是否會被刪除?雄辯關係同步也刪除?
4
A
回答
9
您來決定:sync
有2個參數默認爲true
並負責拆卸:
$model->relationship()->sync([1,2,3]);
$model->relationship()->sync([4,5,6]); // attached [4,5,6], detached [1,2,3]
$model->relationship()->getRelatedIds(); // [4,5,6]
// but:
$model->relationship()->sync([4,5,6], false); // attached [4,5,6], detached []
$model->relationship()->getRelatedIds(); // [1,2,3,4,5,6]
0
答案是肯定的。我找不到任何實際上表明過的文件。
可以說你有兩個表:「作者」和「書籍」,帶有一個數據透視表「book_authors」。
$author_id =2;
$author->books()->sync(array(1,4,5,15));
現在,你必須在數據透視表 「book_authors」 4項:
author_id book_id
2 1
2 4
2 5
2 15
現在更新:
$author_id =2;
$author->books()->sync(array(1,15));
現在是「創建一個新的作家時
book_authors「是:
author_id book_id
2 1
2 15
相關問題
- 1. Laravel雄辯 - 在Morph關係上同步()
- 2. Laravel 4:雄辯軟刪除和關係
- 3. 雄辯關係
- 4. Laravel雄辯關係
- 5. laravel-雄辯關係
- 6. laravel雄辯關係
- 7. 雄辯的關係 - 關係的關係
- 8. 同步Laravel雄辯實例
- 9. 的hasMany雄辯關係5.4
- 10. Laravel雄辯:從關係
- 11. Laravel雄辯關係問題
- 12. Laravel 5.5雄辯WhenLoaded關係
- 13. 雄辯關係過濾
- 14. Laravel 4雄辯的關係
- 15. Laravel 5.1雄辯關係
- 16. 測試Laravel雄辯關係
- 17. Laravel 4:雄辯和關係
- 18. 雄辯分組的關係
- 19. laravel雄辯排序關係
- 20. Laravel雄辯地與關係
- 21. 使用雄辯的關係
- 22. Laravel雄辯的關係 - hasOne?
- 23. Laravel與雄辯的關係
- 24. 查詢雄辯關係
- 25. 雄辯的關係(Laravel 5.4)
- 26. 與Laravel雄辯關係5.4
- 27. 雄辯不與關係
- 28. 雄辯的表關係
- 29. 雄辯 - 凡關係表
- 30. 雄辯三重關係
謝謝,很高興知道。我可以看到這是有道理的。 –
哇。我不能相信這不在文檔http://laravel.com/docs/4.2/eloquent –
但是,如果我刪除所有的標籤,'sync()'什麼都不做。你怎麼能在這種情況下工作?例如,如果以前在關係表中有'[1,2,3]',並且想要創建'sync([])',因爲您已經從Select2中刪除了所有標記。你如何刪除所有的標籤呢? – Pathros