데이터베이스에서 created_at 및 updated_at를 삭제했지만 laravel이이 열에 삽입하려고 시도하지만 데이터베이스와 컨트롤러에서 모두 삭제했습니다. 뭔가가 캐시 된 것 같아요. BTW 나는 그것이 여분이고 불필요하다고 생각하기 때문에 모델에 public $timestamps = false
을 사용하고 싶지 않습니다.laravel - 데이터베이스에서 updated_at 및 created_at 열을 제거한 후 laravel에 삽입하려고 시도합니다.
답변
음, 사실 당신은 설정해야합니다
public $timestamps = false;
를 기본적으로이 모델은 타임 스탬프를 가지고 (사실은 모든 테이블에 거의 그들을 유지하는 것은 매우 합리적이다) 가정 있기 때문에 그것은 여분의 불필요한 아니다.
타임 스탬프를 저장하는 기록의 과정에서 사용됩니다
if ($this->usesTimestamps()) {
$this->updateTimestamps();
}
그래서 당신은 당신이 테이블에 그 열이 없을 때이 속성을 false로 설정 설득력을 사용하는 다른 짧은 방법이 없습니다.
그래서 각 테이블에이 두 개의 열이 필요하다는 것을 의미합니까? 나는 확실하지 않다! 왜냐하면 나는이 두개가 없으며 제대로 작동하고있는 여러 테이블을 가지고 있기 때문입니다! – codepro
Eloquent를 저장하기 위해 Eloquent를 사용하는 경우 모든 테이블에는 피벗 테이블을 제외하고 기본적으로 타임 스탬프가 있어야합니다. 그러나 예를 들어 쿼리 빌더를 사용하는 경우에는 필요하지 않습니다. –
피벗 테이블이 무엇인지 알 수 없습니다. 내가 아는 것은 나는 뻔뻔 스러움을 사용했으며 누구도 그것을 필요로하지 않는다! – codepro
마이그레이션에서 제거 했습니까? – Serge
예! db, migration, controller에서 제거되었습니다! – codepro