gpt4 book ai didi

php - Eloquent - 使用唯一的字符串或唯一的 int 作为 id

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:00:53 25 4
gpt4 key购买 nike

对于我的 users 表,Eloquent 让我使用 idincrement:

$table->increments('id');

这样就好了。每个新用户都将获得他们的 id、1、2、3 等。

然而,id 应该是一个自动分配的字符串或整数。

我要

  • 用户不知道有多少用户
  • 用户id like 至少 5 位数字 (47533) 或者是唯一的随机字符串 (f8hrcrft13)

如何使用 Eloquent 实现这一目标?

到目前为止我发现了什么:

$table->string('id', 36)->primary()

最佳答案

您可以在创建用户模型时分配 ID。

$data = [
'id' => str_random(10),
'first_name' => 'Andrej'
];

$user = User::create($data);

但是,这将忽略您默认指定的 ID。
你需要稍微编辑一下 models/User.php 并告诉你不要自动递增。
在顶部添加此属性

public $incrementing = false;

不要忘记将用户表中的列类型从 INT 更改为 VARCHAR。

关于php - Eloquent - 使用唯一的字符串或唯一的 int 作为 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22066083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com