belongsTo(NirObject::class, 'object_id'); } public function field(): BelongsTo { return $this->belongsTo(Field::class); } public function get() { return $this->value; } public function set($value): bool { return $this->update(['value' => $value]); } public static function applyFilter($query, $value) { if (is_array($value)) { if (!empty($value['gt']) && !empty($value['lt'])) $query->whereBetween('value', $value); elseif (!empty($value['gt'])) $query->where('value', '>=', $value['gt']); elseif (!empty($value['lt'])) $query->where('value', '<=', $value['lt']); } else $query->where('value', '=', $value); } }