2016-07-23 159 views
0

我有四个表格:characters,pets,characters_pets和characters_pets_metadata。 字符对数据透视表characters_pets许多宠物,但我还需要从元数据表中获取数据:Laravel - 获取数据透视表关系

class Character extends Model { 

    protected $table = 'characters'; 

    public function pets() { 
     return $this->belongsToMany('Pet', 'characters_pets'); 
    } 
} 



class CharacterPet extends Model { 

    protected $table = 'characters_pets'; 

    public function metadata() { 
     return $this->hasMany('PetMetadata'); 
    } 

} 

我如何通过关系获取每个字符的宠物的元数据?

回答

0

我相信你要找的东西,如:

$character = Character::find(1); 

foreach($character->pets as $pet){ 

    // you can access any pet information here 

    foreach($pet->metadata as $meta){ 

     var_dump($meta); // your meta information here 

    } 

}