Laravel eloquent模型使用自定义表和主键具有不正确的主键值

时间:2018-05-30 18:39:28

标签: laravel eloquent

我将应用程序从直接PHP迁移到使用Laravel。当前用户表名为Person,主键person_idunsigned bigint(20)类型。

我已使用以下内容更新了我的App \ User模型:

protected $table = 'Person';
protected $primaryKey = 'person_id';

每当我提出请求并检查Auth->user()时,person_id始终是错误的值。我的预期ID为4294967410,但它返回2147483647。用户的所有其他属性都是正确的(电子邮件,姓名等)。

我非常担心为什么会这样。我正在使用全新的laravel。

1 个答案:

答案 0 :(得分:0)

如果不是What's the maximum size for an int in PHP?

的重复,则相关

您在32位计算机上获得PHP_INT_MAX,即2147483647。

例如在我的Mac上,int限制为:

Psy Shell v0.9.4 (PHP 7.1.14 — cli) by Justin Hileman
>>> echo PHP_INT_MAX
9223372036854775807⏎

解决方案是使用具有64位PHP构建的64位计算机。