繁体   English   中英

Laravel属于To&hasMany关系不起作用

[英]Laravel belongsTo & hasMany relation not working

我有一个名为champ_sales的表,其中包含属于表champions 我已经正确设置了模型,并且尝试以与此处文档完全相同的方式进行查询: http : //laravel.com/docs/eloquent#querying-relations指出,但它不起作用。

class ChampSales extends Eloquent {

    protected $table = 'champ_sales';

    public function champ(){
        return $this->belongsTo('Champion');
    }

}

class Champion extends Eloquent {

    protected $table = 'champions';

    public function skins(){
        return $this->hasMany('Skin');
    }

//relevent relation here:
    public function championOnSale(){
        return $this->hasMany('ChampSales');
    }

    public function skinOnSale(){
        return $this->hasMany('SkinSales');
    }

}

我的查询:在表champions找到id=2 start_date

$champsales = ChampSales::find(2);
echo $champsales->champ->start_date;

运行此命令给我一个模糊的错误,提示“试图获取非对象的属性”。 我不太确定自己做错了什么,将文档放在后面。

我刚刚修好了。 我在champ()中定义了本地键和外键。 我以为laravel命名约定会很好,但是我想不是。

class ChampSales extends Eloquent {

    protected $table = 'champ_sales';

    public function champ(){
        return $this->belongsTo('Champion', 'champion_id', 'id');
    }

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM