belongsTo(ProductCategory::class,'product_category_id','id')->withTrashed(); } public function subcategory() { return $this->belongsTo(ProductSubcategory::class,'product_subcategory_id','id')->withTrashed(); } public function brand() { return $this->belongsTo(Brand::class,'brand_id','id')->withTrashed(); } public function model() { return $this->belongsTo(ProductModel::class,'product_model_id','id')->withTrashed(); } public function loans() { return $this->morphtoMany(User::class, 'loanable','loans')->where('loan_type_id','=',LoanType::where('name','=','Loan')->first()->id); } public function reservations() { return $this->morphtoMany(User::class, 'loanable','loans')->where('loan_type_id','!=',LoanType::where('name','=','Loan')->first()->id); } }