Laravel迁移和播种错误

Jis*_*had 4 laravel

我刚刚开始使用Laravel框架及其命令提示符.但是,我在迁移和播种功能方面遇到了麻烦.

我正在Windows 7 64位操作系统上的WAMP服务器上进行开发.

数据库名称为"laravel",包含以下两个表:

  1. 迁移
  2. 用户

users表包含以下列:

  • ID
  • 名称
  • 电子邮件
  • 用户名
  • 密码

我使用命令行生成存储的迁移app\database\migrations\2014_06_24_221654_test.php.我还在迁移表中创建了迁移和批处理字段.

然后我想将一封电子邮件播种到该表,所以我DatabaseSeeder.php在数据库\ seeds文件夹中使用.

<?php class DatabaseSeeder extends Seeder {

public function run()
{
    $this->call('UserTableSeeder');

    $this->command->info('User table seeded!');
}

}

class UserTableSeeder extends Seeder {

protected $fillable = array('email');

public function run()
{


    User::create(array('email' => 'jishadp369@gmail.com'));
}

}

?>
Run Code Online (Sandbox Code Playgroud)

然后,我使用以下命令为数据库设定种子

php artisan db:seed
Run Code Online (Sandbox Code Playgroud)

但是,我得到以下异常:

 [Illuminate\Database\QueryException]

 SQLSTATE[42S22]: Column not found: 1054 Unknown column 'updated_at' in 'field
 list' (SQL: insert into `users` (`email`, `updated_at`, `created_at`) values (ji
 shadp369@gmail.com, 2014-06-25 00:23:48, 2014-06-25 00:23:48))
Run Code Online (Sandbox Code Playgroud)

我怎么解决这个问题?我需要一个型号吗?

fmg*_*lez 10

这是因为您的用户模型使用时间戳字段.

检查用户模型文件.

你可以$this->timestamps = true在构造函数中找到类似这样的东西.将其更改为false并重试.如果您没有找到类似的内容,请将此属性添加到类中:

public $timestamps = false; 
Run Code Online (Sandbox Code Playgroud)

我希望它适合你.