Php 将数据库关系转换为雄辩的关系
所以,我一直在努力观察和阅读laracasts的雄辩关系。不幸的是,我仍然不太明白如何将数据库关系转换为雄辩的关系(hasOne、belongsTo、hasMany等) 假设我有一个帐户和客户表。Account表有一个“Customer_id”外键,它引用Customer表上的“id”。让我们假设这是一对多的关系。我应该如何把它放在我的模型上Php 将数据库关系转换为雄辩的关系,php,laravel,eloquent,Php,Laravel,Eloquent,所以,我一直在努力观察和阅读laracasts的雄辩关系。不幸的是,我仍然不太明白如何将数据库关系转换为雄辩的关系(hasOne、belongsTo、hasMany等) 假设我有一个帐户和客户表。Account表有一个“Customer_id”外键,它引用Customer表上的“id”。让我们假设这是一对多的关系。我应该如何把它放在我的模型上 哪个表应该包含“hasMany”,哪个表应该包含“belongsTo”?想想你会怎么说。在您的案例中,听起来好像一个客户有多个帐户,而一个帐户属于一个客户
哪个表应该包含“hasMany”,哪个表应该包含“belongsTo”?想想你会怎么说。在您的案例中,听起来好像一个客户有多个帐户,而一个帐户属于一个客户 因此,您可以将
hasMany()
放在Customer
模型中,将belongsTo()
放在帐户
模型中
class Customer extends Model {
public function accounts() {
return $this->hasMany('App\Account');
}
}
class Account extends Model {
public function customer() {
return $this->belongsTo('App\Customer');
}
}
您可以阅读有关Laravel数据库关系的更多信息。谢谢!因此,深入研究一下,无论哪个表有外键,都会得到belongsTo(),而被外键引用的表会得到hasMany(),对于正确的一对多关系。对于多对多,这两种模型都有一个
belongtomany()
方法。