Mysql 如何在Laravel eloquent中创建模型关系列表?
如果我有一个名为主索引的表,它有例如:Country Name=“USA”,我想有几个模型与之关联(GDP、人口、不平等性等),我如何在一个字段中定义模型列表,以便我知道该国家有哪些属性 如果可能的话,请告诉我,谢谢 你可以阅读 首先,您需要创建表,但在迁移过程中要确保您将创建的表基于层次结构示例: 如果将Mysql 如何在Laravel eloquent中创建模型关系列表?,mysql,laravel,eloquent,Mysql,Laravel,Eloquent,如果我有一个名为主索引的表,它有例如:Country Name=“USA”,我想有几个模型与之关联(GDP、人口、不平等性等),我如何在一个字段中定义模型列表,以便我知道该国家有哪些属性 如果可能的话,请告诉我,谢谢 你可以阅读 首先,您需要创建表,但在迁移过程中要确保您将创建的表基于层次结构示例: 如果将主索引作为关系的一般根,则需要在迁移中首先创建它。它在您的数据库>迁移文件夹中看起来是这样的 2020_07_14_0000001_create_master_indexs_table.php
主索引
作为关系的一般根,则需要在迁移中首先创建它。它在您的数据库>迁移
文件夹中看起来是这样的
2020_07_14_0000001_create_master_indexs_table.php
2020_07_14_0000001_create_gdps_table.php
2020_07_14_0000001_create_populations_table.php
2020_07_14_0000001_create_inequalities_table.php
主索引模型
您将指定关系,它应如下所示:
公共功能gdps(){
return$this->hasMany(Gdp::class);//如果您有不同的外键,可以在下一个参数return[$this->hasMany(Gdp::class,'Gdp_id');]中指定它,如下所示
}
公共职能(人口){
返回$this->hasMany(Population::class);
}
公共职能不平等(){
返回$this->hasMany(不等式::类);
}
GDPS模型/人口模型/不平等模型
您需要指定它所属的位置。应该是这样的
public function master_index(){
返回$this->belongsTo(MasterIndex::class);
}
GDPS移民/人口移民/不平等移民
在迁移过程中,应该指定外键
如果您使用的是Laravel7.x,您可以这样做
$table->foreigned('master_index_id')->constrated()->cascadeOnDelete();
如果您不熟悉上述代码,也可以这样做:
$table->unsignedbiginger('master_index_id');
$table->foreign('master_index_id')->references('id')->on('master_index')->onDelete('cascade');