我使用laravel 5.4工作,我希望从我的关系表中获得信息。Laravel 5.4 relationship 2 tables 3 id
我在phpmyadmin的3个表
运动员
- ID
- FIRST_NAME
- LAST_NAME
类型
- ID
- NAME
- SLUG
ATHLETES_TYPES
- ID
- TYPE_ID
- ATHLETE_ID
我有3种型号
运动员
TYPE
ATHLETEBYTYPE
如何我需要关系模型有名字和蛞蝓从我桌上的类型,与我的桌上运动员的身份证?
谢谢。
我使用laravel 5.4工作,我希望从我的关系表中获得信息。Laravel 5.4 relationship 2 tables 3 id
我在phpmyadmin的3个表
运动员
类型
ATHLETES_TYPES
我有3种型号
运动员
TYPE
ATHLETEBYTYPE
如何我需要关系模型有名字和蛞蝓从我桌上的类型,与我的桌上运动员的身份证?
谢谢。
这里有关系,哥们
在app/Athlete.php
class Athlete extends Model
{
public function types(){
return $this->belongsToMany('App\Type');
}
}
在app/Type.php
class Type extends Model
{
public function Athletes(){
return $this->belongsToMany('App\Athlete');
}
}
为此,您只需要2个模型文件ATHLETE
和TYPE
并使用多对多关系,然后您可以使用ATHLETES_TYPES
表作为数据透视表。
为实现这一点:
第一此方法添加到ATHLETE
模型文件:
public function types()
{
return $this->belongsToMany(TYPE::class,'ATHLETES_TYPES','ATHLETE_ID','TYPE_ID');
}
secode此方法添加到TYPE
型号:
public function athletes()
{
return $this->belongsToMany(ATHLETE::class,'ATHLETES_TYPES','TYPE_ID','ATHLETE_ID');
}
,并在最后删除ID
从ATHLETES_TYPES
表提交。
完成。
现在如果你有变量从ATHLETE
类型与$ATHLETE->types
你可以得到的类型比。
在这里阅读更多: https://laravel.com/docs/5.4/eloquent-relationships#many-to-many
你把blog_category?这是什么 ? – MSBIZ
@MSBIZ什么都没有。我是从我的项目复制代码,并忘记更改一些parameter.second参数是数据透视表名称。 – Saman