我刚开始使用Laravel,却遇到以下错误:
未知列’updated_at’插入gebruikers(naam,wachtwoord,updated_at,created_at)
我知道错误是由您在迁移表时的时间戳列引起的,但我没有使用该updated_at字段。我遵循Laravel教程时曾经使用它,但是现在我正在制作(或尝试制作)自己的东西。即使不使用时间戳,我也会收到此错误。我似乎找不到使用它的地方。这是代码:
updated_at
控制者
public function created() { if (!User::isValidRegister(Input::all())) { return Redirect::back()->withInput()->withErrors(User::$errors); } // Register the new user or whatever. $user = new User; $user->naam = Input::get('naam'); $user->wachtwoord = Hash::make(Input::get('password')); $user->save(); return Redirect::to('/users'); }
路线
Route::get('created', 'UserController@created');
模型
public static $rules_register = [ 'naam' => 'unique:gebruikers,naam' ]; public static $errors; protected $table = 'gebruikers'; public static function isValidRegister($data) { $validation = Validator::make($data, static::$rules_register); if ($validation->passes()) { return true; } static::$errors = $validation->messages(); return false; }
我一定会忘记某事…我在这里做错了什么?
在模型中,编写以下代码;
public $timestamps = false;
这会起作用。
Explanation : By default laravel will expect created_at & updated_at column in your table. By making it to false it will override the default setting.