我试图通过laravel new <app name>
创建一个新的Laravel应用,并使用内置的Laravel身份验证make:auth
。
但是当我更改表中没有的id
列时,我无法使其工作。
我正在使用的“ ID”具有不同的列名,即StaffID
。
如何使其起作用?我的登录代码(id
中没有看到make:auth
。
谢谢。
答案 0 :(得分:1)
您已经在数据库上更改了主键的名称,但是默认情况下,Laravel假设每个表的主自动增量键均为“ id”。这样做的原因有很多,最重要的是拥有它是标准做法,这意味着您不必在每个模型上都声明它。
但是,当您将主键从id更改为StaffID时,Laravel还需要注意对数据库的更改。您需要做的是直接在类中将以下内容添加到用户模型:
protected $primaryKey = 'StaffID ';