Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
0 oy
33 gösterim
Model::create($request->all) dediğim zaman MassAssignmentException hatası alıyorum. Sebebi, çözümüyle alakalı bilginiz var mıdır?
Php kategorisinde (3.1k puan) sordu
yeniden etikenlendirildi

1 cevap

0 oy

Model::create dedigimiz yerde Model sinifini ornek olarak uye adindaki sinif/tablo oldugunu dusunelim. Bu tablo icinde de adi/soyadi kolonlari olsun. Request nesnesi icinde adi/soyadi yaninda fazladan bir bilgi gelirse mesela yasi olsun, bu bilgiyi de tabloya kayit etmeye calisiyor ve tabloda da boyle bir kolon olmadigindan hata aliyor. Bunu engellemek icin Model sinifi yani Uye sinifi icinde hangi alanlarin kullanilacagini belirtmek lazim.

Ornek olarak

class Uye extends Model
{
    protected $fillable = ['adi', 'soyadi'];
}

Bu tanimda girilebilecek alanlarin isimleri verilmis. Laravel bunun tam tersini yani giremeyeceginiz alanlari da destekler. Ornegin

class Uye extends Model
{
    protected $guarded = ['yasi'];
}

Girilemeyecek alanlardansa ben girilebilecek alanlari belirtmeyi tercih ederim. Sonucta gerektiginde request icine bir suru alan eklenebilir, durumuna gore.

(3.1k puan) cevapladı

İlgili sorular

0 oy
1 cevap 235 gösterim
235 gösterim 5 Ekim 2016 Php kategorisinde kenan (3.1k puan) sordu
0 oy
1 cevap 118 gösterim
118 gösterim 22 Temmuz 2016 Php kategorisinde kenan (3.1k puan) sordu
0 oy
1 cevap 16 gösterim
16 gösterim 11 Kasım 2016 Php kategorisinde kenan (3.1k puan) sordu
0 oy
1 cevap 28 gösterim
28 gösterim 7 Ocak 2017 Php kategorisinde kenan (3.1k puan) sordu
...