Spatie\Activitylog\Models\Activity::subject PHP Method

subject() public method

public subject ( ) : Illuminate\Database\Eloquent\Relations\MorphTo
return Illuminate\Database\Eloquent\Relations\MorphTo
    public function subject() : MorphTo
    {
        if (config('laravel-activitylog.subject_returns_soft_deleted_models')) {
            return $this->morphTo()->withTrashed();
        }
        return $this->morphTo();
    }

Usage Example

 public function log(string $description)
 {
     $activity = new Activity();
     if ($this->performedOn) {
         $activity->subject()->associate($this->performedOn);
     }
     if ($this->causedBy) {
         $activity->causer()->associate($this->causedBy);
     }
     $activity->properties = $this->properties;
     $activity->description = $this->replacePlaceholders($description, $activity);
     $activity->log_name = $this->logName;
     $activity->save();
 }