我有2個型號,a ServiceInstances
屬於ServiceTypes
。服務類型決定了一些東西,它們之間的服務length
Laravel範圍基於屬於關係
在ServiceInstances
我想實現這個「僞」的邏輯:
我需要得到$這個 - >的serviceType() - >長度,但關係方法失敗
public function scopeExpired($query) {
$length = $query->serviceType()->length;
return $query->where('created_at', '<', Carbon::now()->subDays($length));
}
任何想法?
也許 '$這個 - > serviceType->長' - 沒有括號 – Yurich
試過,但沒有成功 - 我得到的是另一個錯誤:'[ErrorException]未定義的屬性:十月\雨\數據庫\生成器:: $ serviceType' –
**作用域應修改查詢而不執行它。**您可能希望在服務類型表上執行連接,並在SQL中執行長度比較而不是PHP。 – jfadich