저는 Laravel 10을 사용하고 있습니다.
다음을 통해 JSON 열 변환을 활용합니다.
으아아아
예를 들어 컬렉션의 값을 직접 업데이트하려고 할 때:
으아아아
응답이 없습니다.
변수를 그대로 할당하면 잘 작동합니다.
으아아아
하지만 단일 요소만 업데이트/추가하면 어떻게 되나요?
다음 해결 방법을 찾았지만 이것이 예상된 동작인가요?
으아아아
이 경우에는 직접 할당만 작동하는 것으로 보이며 컬렉션 캐스팅은 쓰기 기능을 전혀 지원하지 않는 것 같습니다.
컬렉션으로 변환해 보세요
으아아아AsCollection
솔루션(Laravel 8.28 이상)
사용
IlluminateDatabase EloquentCastsAsCollection
而不是'collection'
이 필요합니다.$casts
$casts
数组中,您可以定义各个键的类型。通过指定类型的类(必要时),Laravel 自动处理转换。这就是为什么具体使用AsCollection::class
배열에서 각 키의 유형을 정의할 수 있습니다. Laravel은 (필요한 경우) 유형의 클래스를 지정하여 자동으로 변환을 처리합니다. 그렇기 때문에의 구체적인 사용이 필요합니다.
으아아아더 많은 정보-
속성 변환(변환 목록)- - Laravel 문서(10.x)
배열, 객체 및 컬렉션 변환- - Laravel 문서(10.x)
Laravel 8에 새로운 전환 기능이 추가되었습니다- - Laravel News
- Laravel API 문서AsCollection::class
솔루션(Laravel 7.x 이하)
해야 합니다.AsCollection
Laravel 8.x 이상에서 기본적으로 사용 가능합니다. 이전 버전의 설정 기능이 필요한 경우 직접 맞춤 캐스트를 생성'array'
또는배우:
를 사용할 수도 있습니다. 으아아아더 많은 정보-
사용자 정의 변환을 수행하는 방법
- Laravel 문서(7.x)🎜 🎜