Selamlar, Laravel modelleri içerisinde kullanılabilecek fieldlar fillable
array'i içerisinde tanımlanıyor ve get veya set işlemleri için direkt fillable içerisinde tanımlı isimleri ile çağırmak gerekiyor $user->name
gibi ve phpstorm bunu önermiyor yani bu modelde böyle fieldlar var diyip kullanmak için göstermiyor. Bunun bir çözümü vs var mı ?
Geçici bir çözüm olarak Model içerisinde getter ve setter methodlarını kendim oluşturmakta buldum. Aşağıdaki gibi oluşturduğum zaman kullanabiliyorum ve ide ile kolay şekilde erişebiliyorum alttaki gibi bir kullanım ne derece sağlıklı veya bu durum için Laravelde farklı bir yaklaşım var mı ?
public function getName(): string
{
return $this->getAttribute('name');
}
public function setName(string $name): void
{
$this->setAttribute('name', $name);
}
Kullanım olarakta;
$user = new User();
$user->setName('John');
$user->save(); // or $user->update();
$userName = $user->getName();