나는 5.3에서 5.4로 업그레이드했다. 지금 얻을 반사 예외 클래스 eloquent.saving : App \ model_name이 존재하지 않습니다.. 다른 모든 것들이 잘 보이고 잘 작동합니다. 나는 그것을 쿼리 할 수 있고, 그것을 검색 할 수 있으며, Vue 브라우징에 그것을 디스플레이 할 수있다 - 단지 절약 부분이 적합을 던지고있다. 그리고 그것은 모든 모델과 각각의 컨트롤러에서 발생합니다. 간단한 모델Laravel 5.3 -> 5.4 반사 예외
예 :
모델
namespace App;
use Illuminate\Database\Eloquent\Model;
class Bank extends Model
{
protected $guarded = ['id'];
}
컨트롤러
namespace App\Http\Controllers;
use App;
use App\Bank;
use Illuminate\Http\Request;
class TestController extends Controller
{
public function test1(Request $request) {
/** @var \App\Bank $bank */
// get record
$bank = Bank::first();
// change data
$bank->bic = "xxx";
// dump it - looks ok
dump($bank);
// this throws reflection error
$bank->save();
}
}
없음 사용자 지정 코드가 변경되지 않았습니다. 업그레이드 만 (업그레이드 가이드 + 팅커에서 적용 가능한 변경 사항이 추가됨). 나는 캐시를 지우고, 컴파일 된보기를 지우고, 최적화를 완료하고, dump-autoload ... 작업을 완료했습니다. 이것은 5.5라는 단계의 중간 단계입니다. 그러나 5.5로 직접 업그레이드해도 마찬가지입니다. 실마리가 어디에서 시작해야하는지 알지 못합니다.
업데이트 :
새 개체를 만들면 Carbon 예외가 발생합니다. 모델에서 $ timestamps = false를 설정하면 Carbon 오류가 제거되고 새 모델을 만들어 저장할 수 있습니다. 그러나 동일한 레코드를 찾아 저장하려고하면 다시 반사 예외가 발생합니다.
난 다시 5.3로 다운 그레이드 할 경우
업데이트, 모든 작업을 즉시 시작합니다.
새 항목을 만들거나 같은 오류가 발생할 수 있습니까? – kerrin
모델이 App 폴더의 루트에 있습니까? '네임 스페이스 App, ' – kerrin
@kerrin. 예, 모델이 정확한 위치에 있습니다. 두 번째 댓글에 ... 우리는 어딘가에 있습니다. 나는 실제로 하나를 만들려고하지 않았습니다. 새 Bank()를 수행하려고하면 Carbon error가 발생합니다. DateTime :: __ construct() : 위치 0 (<)에서 시간 문자열 ( xml version = "1.0")을 파싱하지 못했습니다. 그러나, 내가 Tinker에서 똑같은 일을한다면, 그것은 작동합니다 ... 최대 저장(). 그런 다음 리플렉션 예외와 함께 실패합니다. – Corwin