저는 Laravel 9를 사용하여 웹을 개발하고 있습니다. sail php make:migration add_bought_to_products_table
在产品表中添加一个名为“bought”的布尔列。当尝试使用 Eloquent 帮助程序修改值时 (Product::where('id', $product->id)->update(array('bought'=>true))
데이터베이스의 값이 업데이트되지 않았습니다 < /strong> 명령을 사용했습니다. 살펴보니 마이그레이션으로 생성된 새 필드 "Purchase"가 읽기 전용: 해당 테이블 열이 없습니다 로 표시되어 있는 것을 발견했습니다.
이전 코드는 다음과 같습니다.
으아아아다음은 데이터베이스의 스크린샷입니다:
캐시를 정리하고 데이터베이스를 재구축하고 롤백하고 다시 마이그레이션을 여러 번 시도했습니다. 이상한 점은 이전에 "가시성" 필드를 추가했는데 문제의 필드와 정확히 동일한 코드와 단계를 사용하여 완벽하게 작동했다는 것입니다.
어떻게 해결하나요?P粉5049209922024-02-26 00:01:36
고민 끝에 도커 컨테이너를 다시 시작하여 문제를 해결했습니다. 이 문제는 Laravel과 관련이 없고 Docker와 관련이 있는 것 같습니다!
비슷한 문제가 발생하는 경우: Docker와 모든 컨테이너를 종료하고 다시 시작하세요.