我刚刚开始使用Laravel框架及其命令提示符.但是,我在迁移和播种功能方面遇到了麻烦.
我正在Windows 7 64位操作系统上的WAMP服务器上进行开发.
数据库名称为"laravel",包含以下两个表:
users表包含以下列:
我使用命令行生成存储的迁移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)
我希望它适合你.
| 归档时间: |
|
| 查看次数: |
2597 次 |
| 最近记录: |