Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将数据库关系转换为雄辩的关系_Php_Laravel_Eloquent - Fatal编程技术网

Php 将数据库关系转换为雄辩的关系

Php 将数据库关系转换为雄辩的关系,php,laravel,eloquent,Php,Laravel,Eloquent,所以,我一直在努力观察和阅读laracasts的雄辩关系。不幸的是,我仍然不太明白如何将数据库关系转换为雄辩的关系(hasOne、belongsTo、hasMany等) 假设我有一个帐户和客户表。Account表有一个“Customer_id”外键,它引用Customer表上的“id”。让我们假设这是一对多的关系。我应该如何把它放在我的模型上 哪个表应该包含“hasMany”,哪个表应该包含“belongsTo”?想想你会怎么说。在您的案例中,听起来好像一个客户有多个帐户,而一个帐户属于一个客户

所以,我一直在努力观察和阅读laracasts的雄辩关系。不幸的是,我仍然不太明白如何将数据库关系转换为雄辩的关系(hasOne、belongsTo、hasMany等)

假设我有一个帐户和客户表。Account表有一个“Customer_id”外键,它引用Customer表上的“id”。让我们假设这是一对多的关系。我应该如何把它放在我的模型上


哪个表应该包含“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()
方法。