모델을 업데이트하고 관계를 동기화 할 때 이미 존재하는 모든 ID를 전달하지 않으면 해당 관계가 제거됩니까?Eloquent relation sync도 제거합니까?
답변
는 당신이 결정 : 내가 확인할 수
$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]
대답은 예입니다. 나는 실제로 그것을 진술 한 어떤 문서도 찾을 수 없었다.
피벗 테이블이 "book_authors"인 "authors"및 "books"테이블이 2 개 있다고 가정 해 보겠습니다.
새로운 저자 작성 :
$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
: sync
가 true
기본값 및 분리에 대한 책임이 두번째 매개 변수가 있습니다. 'sync()'메소드는 더 이상 존재하지 않는 릴레이션을 제거하고 여전히 관련성이있는 관계를 유지하기로되어 있습니다. –
Andreyco
그러나 모든 태그를 제거하면 sync()가 아무 것도하지 않습니다. 이 경우 어떻게 작동시킬 수 있습니까? 예를 들어, 이전에 관계형 테이블에 [1,4,5,15]가 있고 Select2에서 모든 태그를 제거했기 때문에 동기화 ([])를 만들고 싶다면. 그러면 어떻게 모든 태그를 삭제합니까? – Pathros
- 1. Many to Many Eloquent Relation
- 2. Laravel eloquent relation 다중 모델
- 3. laravel : 관계 메소드가 Illuminate \ Database \ Eloquent \ Relations \ Relation 객체를 반환해야합니다.
- 4. Eloquent Query json을 기반으로 동적으로
- 5. 데이터베이스 설계 -relation
- 6. recurrence relation 느린 정렬
- 7. ActiveRecord :: Relation Object의 내용보기
- 8. Eloquent ORM 다중 관계
- 9. Laravel 쿼리 관계 모델 :: has ('relation')가 작동하지 않습니다.
- 10. Eloquent 모델
- 11. Eloquent lastInsertId
- 12. Laravel Eloquent
- 13. many to many relation 프로펠러
- 14. 메서드에서 ActiveRecord :: Relation 오류를 발생시킵니다.
- 15. sqlalchemy mixin, foreignkey 및 relation
- 16. 다이어그램 ER doubte one relation
- 17. Many to Many Eloquent - Same Model
- 18. Laravel Eloquent 모델에 도우미 메서드 추가하기?
- 19. Laravel : Eloquent relation을 기반으로 사용자를 얻으십시오.
- 20. Laravel - Eloquent group by
- 21. 소셜 네트워크를위한 Eloquent
- 22. Laravel Eloquent Relationship
- 23. Eloquent - 특정 행 제외
- 24. Laravel Eloquent Join
- 25. Eloquent ORM 영화 위치 :
- 26. Laravel Eloquent : groupBy와의 합
- 27. Laravel Eloquent Calculate
- 28. Eager Loading Laravel Eloquent
- 29. Laravel weird Eloquent 오류
- 30. Laravel Eloquent relationship error
고마워, 잘 알고있다. 이것이 의미있는 부분을 알 수 있습니다. –
와우. 나는 이것이 문서에 없다고 믿을 수 없다. http://laravel.com/docs/4.2/eloquent –
그러나 모든 태그를 제거하면'sync()'는 아무 것도하지 않는다. 이 경우 어떻게 작동시킬 수 있습니까? 예를 들어, 이전에 관계형 테이블에'[1,2,3]'이 있고 Select2에서 모든 태그를 제거했기 때문에'sync ([])를 만들고 싶다면. 그러면 어떻게 모든 태그를 삭제합니까? – Pathros