
Tüm yazılar


Laravel 10 Mysql 8.0 SQLSTATE[42000]Laravel 1071 users_email_unique Specified key was too long hatası çözümü
Wampserver64 yüklü Windows 11 bilgisayarda Laravel 10 projesinde Mysq 8.0 veritabanı için migrate komutu çalıştırıldığında users_email_unique alanını oluştururken users_email_unique sütunu için Specified key was too long hatası veriyor. Bunu çözmek için app/Providers/AppServiceProvider.php dosyasının üst kısmındaki use kodlarının olduğu satıra use Illuminate\Support\Facades\Schema; boot fonksiyonunun içine Schema::defaultStringLength(191); kodunu yaz.

Laravel id yerine slug kullanma
İlgili Modelin php dosyasına aşağıdaki metodu ekle. Bu metod model bağlama işlemlerinde id yerine slug isimli kolonun(sütun) referans alınmasını sağlar. Resource şeklinde oluşturulan routelarda aşağıdaki yöntem çok kullanışlıdır. İlgili Laravel Dökümanı : Keyi Özelleştirme – Customizing the Key

Laravel refresh() ile fresh() farkı
refresh() metodu veritabanından tüm yeni dataları ve ilişkileri alıp oluşturulmuş modele aktarır. fresh() metodu oluşturulan model etkilenmeden yeni bir model örneği oluşturur. İlişkileri tekrar yüklemez. $model = $model->fresh() şeklinde yeni model örneği çağırabilirsin. Detaylı Bilgi İçin Laravel Dökümanları Yenilenen Modeller – Refreshing Models

Laravel View’e Veri Gönderme Yöntemleri
1. Yöntem : Laravel with metoduyla gönderim. 2. Yöntem : Değerleri bir değişkene atayıp gönderim 3. Yöntem : View isminden sonra array(dizi) şeklinde key => value olarak gönderim 4. Yöntem : Php compact metoduyla gönderim. Compact metodu bir dizi oluşturur ve değişken isimlerini array keyleri haline getirerek değerleri bunlara bağlar. Compact metodunun Laravelle ilgisi yoktur.…

Laravel Migrate Komutları
veritabanından tabloları siler ve yeniden migrationları çalıştırıp tabloları oluşturur.

Laravel constrained() yöntemi ile Otomatik İlişkili Tablo Oluşturma
Profiles Tablosu ve Kolonları Profiles Tablosu Migration Şeması Profile Pictures Tablosu ve Kolonları Profile Pictures Tablosu Migration Şeması Yukarıda kırmızı ile yazdığımız satır aşağıdaki işlemin aynısını yapar. Kodda yazdığımız constrained() metodu bize bunu sağlıyor. Kodun açıklaması profile pictures tablosundaki profile_id ile profile tablosundaki id alanlarını birbirine bağla demektir. constrained() yöntemi foreignId(‘profile_id‘) içinde yazan profile_id katarından…

JSON, JSON-LD ve GEO-JSON farkı nedir
Dosya kimlik tanımlayıcılarından (Content Mime Type) olan JSON ile JSON-LD arasındaki en önemli fark JSON-LD tipinde ana keylerin @ ile başlaması ve html gövdesinden ayrı olarak bir javascript gösterimi halinde olmasıdır. Ayrıca google mikrodata olarak (yapılandırılmış veri) json-ld formatını önermektedir. Geo-Json ise çoğrafi, mekansal bilgilerin sunulduğu yapılandırılmış veridir. JSON JSON-LD GEO+JSON { “type”: “Feature”, “geometry”:…

Laravel Projesine Bootstrap 5 Ekleme Basit Yöntem
Composer ile Bootstrap 5 css çatısını projeye dahil ediyoruz. Proje klasörü içindeyken aşağıdaki composer komutunu yazıyoruz. son sürüm bootstrapı yükler farklı sürüm isteniyorsa örnek 5.0.0 bu kodu yazabilirsin. Bootstrap son sürümü Vendor klasörünün altında twbs klasörüne yüklendi. Buradan bootstrap css ve js klasörlerini laravel public klasörünün içine kopyalıyoruz. Aşağıdaki komutla yapabilirsin. -r parametresi klasörü(dizini) kopyalamayı…
