2017-11-11 10 views
0

データベースからcreated_atとupdated_atを削除しましたが、laravelがこれらのカラムに挿入しようとしましたが、データベースとコントローラの両方のコードから削除しました。私は何かがキャッシュされていると思う。私はモデルにpublic $timestamps = falseを使用したくないと思うので、彼らは余分で不要です。laravel - データベースlarovelからupdated_atとcreated_atカラムを削除した後に挿入しようとしました

public $timestamps = false; 

をし、それが想定されますデフォルトでは、モデルはタイムスタンプを持っている(実際に、それはほとんどすべてのテーブルにそれらを保つために非常に合理的だ)ので、それは追加の不要なではありません。

+0

移行から削除しましたか? – Serge

+0

はい! db、migration、controllerから削除されました! – codepro

答えて

0

まあ、実際にあなたが設定する必要があります。

タイムスタンプが記録を保存するプロセスで使用されています

if ($this->usesTimestamps()) { 
    $this->updateTimestamps(); 
} 

ので、あなたがテーブルにそれらの列を持っていないときには、このプロパティをfalseに設定するために雄弁を使用している他の短い方法はありません。

+0

なので、各テーブルには2つの列が必要で、それらは必須ですか?よく分かりません!私はこれらの2つを持っていないいくつかのテーブルを持っているし、正常に動作しているので! – codepro

+0

Eloquentを保存するためにEloquentを使用する場合、すべてのテーブルは、ピボットテーブルを除き、デフォルトでタイムスタンプを持つ必要があります。しかし、たとえばクエリービルダーを使用している場合、それらは必要ありません。 –

+0

どのピボットテーブルがわかりません。私が知っているのは、私は寓話を使っていて、誰もそれを必要としていないということです! – codepro

関連する問題