hasOne 正向關聯,belongsTo 反向關聯。
簡單的講就是,沒有太大的區別,只是在邏輯上出現的思想的偏差(邏輯的合理性)。
belongsTo:可以理解為屬於
hasOne:可以理解為擁有
首先,我們創建兩張表。
user表 字段 id name password字段
user_address表 id user_id city字段
不難看出,user_address是基於user擴展出來的表。我們可以說,user擁有user_address的外鍵,user_address的外鍵屬於user。
User模型中關聯user_address表的時候使用hasOne
UserAddress模型中關聯user表的時候使用belongsTo
我們兩張表轉化為人(user,user)和手機(user_address,Phone)的關系
我(User)擁有(hasOne)一個它(Phone),我(Phone)屬於(belongsTo)它(User)。