对于int自动递增id,在save()方法之后,它返回id。
但它不会返回由 mysql 触发器完成的自定义增量 id 主键。
$productData = new Product($request->all());
$productData->save($productData->getAttributes());
return $productData->id;
在这种情况下如何检索自定义 ID?
这超出了 Laravel 的范围,因为自动递增字段是由您的数据库提供的,而 Laravel 无法从您的数据库获取 Last_insert_id 。
对于这种情况,您必须更改触发器以使其更改last_insert_id
与新值:
有没有办法获取MySQL中非自动递增列的最后插入ID? https://stackoverflow.com/questions/8746340/is-there-a-way-to-get-last-inserted-id-of-a-non-auto-incremented-column-in-mys
注意:您可能需要确保型号incrementing
is true
这样它就会尝试从数据库中获取 id。如果您尚未在模型中设置此字段,则不要设置它。默认情况下,模型能够在插入后自动从数据库获取值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)