如何創建hasMany自我關係與哪裏標準?Laravel hasMany self where where criteria?
例如,這就是我想做的事:
class Payment extends \Illuminate\Database\Eloquent\Model {
public function refunds() {
return $this->hasMany(self::class, 'transaction_id', 'transaction_id')
->where('this.method','=','that.method')
->where('that.amount','<',0);
}
}
但我不知道如何給表中的兩個不同的別名,這樣我可以設置WHERE條件。
N.B.在我的例子中,「退款」只是一種負面支付。他們將擁有相同的交易ID和方法。
你如何設置'this'和'that'別名? 'this'應該是當前的模型,''應該是相關的模型。 – mpen