Laravel所有返回ID变为0

时间:2016-01-05 03:36:43

标签: php laravel

我的所有查询都遇到问题,varchar ID返回一个整数。

例如,应返回C-1451963448-MjL的查询返回0。

我的查询:

$transaction = Transaction::with('user')->get();
return response()->json($transaction);

返回:

[
  {
    "id": 0,
    "user_id": 8,
    "amount": "56164.00",
    "created_at": "2016-01-05 10:10:48",
    "user": {
      "id": 8,
      "facebook_id": null,
      "first_name": "Alta",
      "last_name": "Keebler",
    }
  },
]

事务ID变为0.上次我尝试成功,但现在每个varchar的ID都返回0而不是实际值。

我已尝试foreach获取查询,是的,ID为0。 当我检查时,我也尝试dd($transaction),它返回正确的ID。

我该怎么办才能让它再次发挥作用?

1 个答案:

答案 0 :(得分:27)

在您的模型上将$incrementing设置为false。

public $incrementing = false;

强制转换系统会检查是否设置为true,如果是,则会尝试将key字段强制转换为int。