首页 > 解决方案 > Laravel 5.8 make:auth 更改字段名称不起作用

问题描述

我尝试通过laravel new <app name>并使用内置的 Laravel authentication创建一个新的 Laravel 应用程序make:auth

id但是当我更改列不在我的表中时,我无法使其工作。我使用的“ID”具有不同的列名,它是StaffID.

怎么可能让它发挥作用?id我的登录代码 ( make:auth)中没有看到。

谢谢你。

标签: databaselaravellaravel-5.8

解决方案


更改与模型关联的主键

您已经更改了数据库上主键的名称,但 Laravel 默认假设每个表都有一个“id”的主自动增量键。这有很多原因,最重要的是拥有它是标准做法,这意味着您不需要在每个模型上声明它。

但是,由于您已将主键从 id 更改为 StaffID,Laravel 还需要注意数据库的此更改。您需要做的是直接在类中将以下内容添加到用户模型中:

protected $primaryKey = 'StaffID ';

推荐阅读