2016-05-28 65 views
0

Laravel雄辩自加入父子关系

class Product_category extends Model 
{ 
    // 
    protected $table='PRODUCT_CATEGORIES'; 
    public $timestamps = false; 


    public function getParentCategory() { 
     return $this->hasOne(self::class, 'id', 'parent_id'); 
    }. 


    public function getChildCategories(){ 
     return $this->hasMany(self::class, 'parent_id','id'); 
    } 

我能够通过利用getChildeCategories的检索表中的所有子记录,但无法检索特定类别的家长。 它总是让我空。Laravel雄辩自加入亲子

回答

3

这就是所谓的一个一对多的关系,一个hasMany关系的逆是belongsTo方法,你getParentCategory()应该是:

public function getParentCategory() { 
    return $this->belongsTo(self::class, 'parent_id'); 
} 

public function getChildCategories(){ 
    return $this->hasMany(self::class, 'parent_id'); 
} 
+0

感谢您的宝贵回应,但它没有显示我的给我适当的响应同样的记录,因为我已经给出,没有显示父母身份证记录 – Terrasom

+0

请确保你检查一个孩子类别,还检查你的数据库记录是否正确填写了“parent_id”? – Rifki

+0

子类别工作正常,但父类别不检索正确的响应 – Terrasom