尝试将外键设置为字符串数据类型

时间:2016-05-06 05:10:01

标签: mysql laravel laravel-5.2

我是Laravel的新手,我有一个主键字段是字符串,因为我正在处理的项目需要下划线(_)。像这样:0001_0001。由于主键是字符串,我还必须将外键设置为字符串。所以,我想知道有没有办法将字符串设置为外键。我使用mysql database作为数据库。

2 个答案:

答案 0 :(得分:0)

声明对于int或string

是相同的
{{1}}

但效果会有所不同,请查看answer以获取更多信息。

答案 1 :(得分:0)

尝试使用$table->string('user_id')->unique(); 它会帮助你,如果你希望关系使用id以外的值,你可以将第三个参数传递给指定自定义键的hasOne方法: 像这样:

return $this->hasOne('App\Phone', 'foreign_key', 'local_key');