如何在Laravel的种子文件中禁用'create_at'和'update_at'?

dan*_*y89 6 php mysql laravel-4

我不想使用行'update_at'和'create_at',但是Laravel的种子文件正在尝试更新它.我该如何禁用它?

这是我正在使用的代码:

use Illuminate\Database\Migrations\Migration;

class SeedUsersTable extends Seeder {

// $timestamps = false;  <=== will return error
// public static $timestamps = false;  <=== will return error

    public function run()
    {
        DB::table('users')->delete();
        User::create(array(
                'id' => 1,
                'name' => '?????',
                'password' => Hash::make('admin'),
                'login' => 'admin'
        ));
    }
}
Run Code Online (Sandbox Code Playgroud)

Ana*_*nam 16

根据Laravel文档,

...默认情况下,Eloquent会自动维护数据库表上的created_at和updated_at列.只需将这些时间戳列添加到您的表中,Eloquent将负责其余部分.

如果您不希望Eloquent维护这些列,请在User模型中添加以下内容:

class User extends Eloquent {

    public $timestamps = false;

}
Run Code Online (Sandbox Code Playgroud)


小智 6

use Illuminate\Database\Migrations\Migration;

class SeedUsersTable extends Seeder {

    public function run()
    {
        DB::table('users')->delete();

        $user = new User(array(
                'id' => 1,
                'name' => '?????',
                'password' => Hash::make('admin'),
                'login' => 'admin'
        ));

        $user->timestamps = false;
        $user->save();
    }
}
Run Code Online (Sandbox Code Playgroud)