【问题标题】:Laravel default user migrationLaravel 默认用户迁移
【发布时间】:2020-04-20 15:49:09
【问题描述】:

我正在尝试使用 Laravel 设置所需的数据库表。 使用记录在案的:

php artisan make:migration create_users_table;
php artisan migrate;

但是,这会生成一个简单的三列表:

id
created_at
updated_at

身份验证(默认 Laravel 设置)需要明显的字段,例如电子邮件和密码,这意味着尝试使用“开箱即用”身份验证时会出错:

SQLSTATE[42S22]:未找到列:1054 未知列“电子邮件”在 'where 子句' (SQL: select count(*) as aggregate from users where email =

我在这里遗漏了一些东西,我原以为使用预设的身份验证脚手架,Laravel 会正确设置数据库。

从一开始我应该怎么做?

【问题讨论】:

标签: mysql laravel authentication laravel-6 laravel-migrations


【解决方案1】:

事实上,您不需要创建此迁移。默认情况下,在全新的 Laravel 安装中,您已经创建了用户迁移,因此您可以运行

php artisan migrate 

运行此迁移。

默认用户迁移是 here,所有 3 个默认迁移都可以在 here 找到。

如果您创建自定义新迁移,则它仅包含 id 和时间戳(created_at/updated_at),因此您应该编辑此类迁移文件以放置您想要的列

【讨论】:

  • 谢谢,这对我来说是出乎意料的行为,本来以为它会在表中创建任何 REQUIRED 列。由于类已定义错误,我确实删除了它们
猜你喜欢
  • 2016-10-06
  • 2018-07-10
  • 2018-11-23
  • 2017-10-19
  • 1970-01-01
  • 1970-01-01
  • 2016-08-28
  • 1970-01-01
  • 2015-02-17
相关资源
最近更新 更多