我有一个表格订单,做一个雄辩。id(主键)不是 int,而是 varchar。
$order=Order::find($id);// well, it works.
它工作正常,var_dump数据是正确的。问题是引用属性是错误的。我的意思是:
var_dump($order->id); // get int(0), actually it a varchar in 32 characters
var_dump($order->remark); // works well
所以,我认为如果使用雄辩,当 id 不是 int 时有问题吗?
您所需要的只是在您的模型中public $incrementing = false;
。
默认情况下,Eloquent 会将id
(尤其是其$primaryKey
)转换为 int
,除非您明确声明不使用自动递增 ID。