*/ public function productos(): HasMany { return $this->hasMany(Product::class, 'tenant_codigo', 'codigo'); } /** * @return BelongsToMany */ public function tenantProps(): BelongsToMany { return $this->belongsToMany(TenantProp::class, 'tenant_prop_definitions', 'tenant_codigo', 'prop_codigo', 'codigo', 'codigo') ->withPivot('valor') ->withTimestamps(); } /** * @return Builder */ public function props(): Builder { return Prop::query()->forModel(static::class); } /** * @return HasMany */ public function propValues(): HasMany { return $this->hasMany(ModelPropValue::class, 'valuable_id') ->whereHas('prop', fn (Builder $query) => $query->forModel(static::class)); } }