使用eloquent / laravel的save()方法出错500

时间:2015-12-23 16:15:35

标签: php laravel laravel-5 eloquent laravel-5.1

我想用Laravel的eloquent保存一个对象但是在尝试保存时我收到错误500。

这是我的型号代码:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Categorie extends Model
{

}

这是我的行动:

public function addCategorie() {
    $input = Input::all();
    $categorie = new Categorie;
    $categorie->libelle = $input['label'];
    $categorie->save();
    return $categorie;
}

当我在save方法之后使用print_r($categorie)时,我得到了一个结果,但是当我使用save()方法时,我收到了这个错误:

  

SQLSTATE [42S22]:未找到列:1054'字段列表'中的未知列'updated_at'(SQL:插入`categories`(`libelle`,`description`,`updated_at`,`created_at`)值( sss,zzz,2015-12-23 16:20:30,2015-12-23 16:20:30))

1 个答案:

答案 0 :(得分:4)

categories表的迁移文件中,您需要

Schema::create("categories", function($table){
  // Id, name, etc
  $table->timestamps();
}

这样eloquent个查询可以在创建和保存此条目时更新,或created_atupdated_at。如果您不想使用这些时间戳,请添加

class Categorie extends Model {
  public $timestamps = false;
}

到您的Categorie型号。