Laravel 5.2 - 使用字符串作为 Eloquent 表的自定义主键变为 0
我正在尝试使用电子邮件作为表的主键,所以我雄辩的代码是 -
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class UserVerification extends Model
{
protected $table = 'user_verification';
protected $fillable = [
'email',
'verification_token'
];
//$timestamps = false;
protected $primaryKey = 'verification_token';
}
而我的数据库是这样的——
但是如果我这样做 -
UserVerification::where('verification_token', $token)->first();
我得到这个 -
{
"email": "sdfsdf@sdfsdf.sdf",
"verification_token": 0,
"created_at": "2016-01-03 22:27:44",
"updated_at": "2016-01-03 22:27:44"
}
因此,验证令牌/主键变为 0。
任何人都可以帮忙吗?