gpt4 book ai didi

Laravel 迁移和播种错误

转载 作者:行者123 更新时间:2023-12-04 22:46:16 25 4
gpt4 key购买 nike

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

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

数据库名称为'laravel',有以下两个表:

  • 迁移
  • 用户

  • 用户表包含以下列:
  • id
  • 姓名
  • 邮箱
  • 用户名
  • 密码

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

    然后我想将电子邮件发送到该表,所以我使用了 DatabaseSeeder.php在数据库\种子文件夹中。
    <?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'));
    }

    }

    ?>

    然后我使用以下命令为数据库设定种子
    php artisan db:seed

    但是,我得到以下异常:
     [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))

    我该如何解决这个问题?我需要模型吗?

    最佳答案

    那是因为您的 User 模型使用时间戳字段。

    检查您的用户模型文件。

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

    public $timestamps = false; 

    我希望它对你有用。

    关于Laravel 迁移和播种错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24386003/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com