nuri60
use Illuminate\Database\Eloquent\Casts\Attribute;
protected function fullName(): Attribute
{
return Attribute::make(
// Accessor
get: fn($value) => $value,
// Mutator
set: fn($value, $attributes) => $attributes['first_name'].' '.$attributes['last_name']
);
}
Burada $attributes dizisinin içeriği model oluşturulurken kullanılan alanlardan gelir, yani örneğin create() yöntemine verdiğiniz diziden. Örneğin içeride bir category_id varsa ve siz bir Category modelinden çıkıp mutator eklediğiniz modeli ilişki üzerinden oluşturuyorsanız mutator içinde $attributes['category_id'] şeklinde bir değere ulaşamazsınız. Böyle bir şeye ihtiyacınız varsa ve istediğiniz verileri kayıt oluştururken kullandığınız diziye eklemek istemiyorsanız ya da ekleyemiyorsanız model event kullanarak halledebilirsiniz.