首页 > 后端开发 > php教程 > 如何解决 Laravel 5.2 中的自定义主键转换问题?

如何解决 Laravel 5.2 中的自定义主键转换问题?

Mary-Kate Olsen
发布: 2024-10-19 16:48:30
原创
851 人浏览过

How to Resolve Custom Primary Key Conversion Issue in Laravel 5.2?

Laravel 5.2:自定义主键转换问题

在 Laravel 5.2 中使用字符串作为 Eloquent 表的自定义主键时,出现意外的转换问题。从模型中检索属性时,在此场景中充当主键的“verification_token”列将返回数值 0。

要解决此问题,需要覆盖默认类型铸件。通常,自增表假设ID是整数,这会导致转换出现问题。解决方案包括在 Eloquent 模型类中显式指定以下属性:

<code class="php">protected $primaryKey = 'verification_token';
public $incrementing = false;</code>
登录后复制

此外,建议在 Laravel 6.0 及更高版本中将“keyType”属性设置为“string”,如下所示:

<code class="php">protected $keyType = 'string';</code>
登录后复制

通过进行这些修改,Laravel 将正确地将自定义主键视为字符串,并避免不必要的整数转换。这确保了 Eloquent 模型中存储的数据的准确检索和操作。

以上是如何解决 Laravel 5.2 中的自定义主键转换问题?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板