laravel www yönlendirme işlemi

boktan sorunlarda bugün. siteniz www ile girilmesini mi istiyorsunuz? örn: alidesidero.com -> www.alidesidero.com mu olsun istiyorsun;

o zaman bir middleware oluşturuyorsun

ilgili middleware içine girip (middleware klasöründe)

“alid” yazan ise sitenize giriş yaparken httpden sonra linkte yer alan satır. alidesidero.com çıkıyorsa ilk 4 kelimesini aldık alid ise www ekle dedik yolladık. eğer www kısmını kaldırmak istiyorsanız da “alid” yazan yeri “www.” diye değiştirin ve aşağıdaki www.alidesidero.comdaki www’yide kaldırın hepsi bu kadar.

laravel http => https yapma

laravel http’den https yapma olayını kesin ve net çözüyoruz. ötesi yok mk.

bunu middleware kullanarak yapıyoruz abi. hemen yazıyoruz terminale

hop dosyamız oluştu. şimdi middleware klasörüne giriyoruz ve handle fonksiyonu içine

bunu ekledik mi oke miyiz? şimdi kernel.php dosyasını aç ve protected $middlewareGroups yazan yerin altında yer alan ” ‘web’ => ” kısmının en altına

hop bitti bu kadar.

laravel get ile parametre alıp pagination yapma

evet sitemizde arama yapılıyor ve get üzerinden işlem görüyoruz. örneğin

a.com/ara?kelime=abc&kelime2=asd

şeklinde linkini var fakat pagination kısmını aşağı ekleyince sistem çakılıyor. bu linkin sonuna pagination eklemeden

a.com/ara?page=2 yapıyor. ama istediğimiz

a.com/ara?kelime=abc&kelime2=asd?page=2 olması. bunun için ilgili sql sorgusu aşağıdaki gibi tamamlanmalı.

laravel kendi şifremi unuttum mailini düzenleme

arkadaşlar bu konu arak bir konu ama adamın sitesi çortlamadan google önbellekten aldım. yazı piç olmasın diye buraya koyuyorum. yazan arkadaşın eline koluna sağlık. paylaşan arkadaşın linki burada. tekrardan emeğine sağlık diyorum.

Laravel’in içinde yer alan auth paketini kullanıyorsanız, şifre sıfırlama e-maillerinin içeriği bildiğiniz gibi ingilizcedir. Eğer bunun içeriğini kendi dilinizde değiştirmek istiyorsanız, bu yazımı okumanız yeterli.

Uyarı: Kesinlikle vendor klasöründeki dosyayı değiştirmeyin!!!

Vendor klasöründeki dosyada değişiklik yapmadan kendi mail templatemizi oluşturmak için Taylor amcamız bir kanca eklemiş.

Hadiyin hızlı bir şekilde kendi şifre sıfırlama mail templatemizi oluşturalım.

Artisan ile bir notification oluşturalım:

php artisan make:notification MyResetPasswordMail
App\Notifications klasörü içine oluşturulan MyResetPasswordMail.php dosyasının içeriğini aşağıdaki şekilde düzenleyin:

Ardından app klasörü içinde yer alan User.php dosyasındaki User modeline ekleyeceğiniz aşağıdaki kod ile geçerli şifre sıfırlama bildirimini ezmiş (override) olacaksınız.

Sınıfı modelin en üstüne eklemeyi unutmayın!!!

use App\Notifications\MyResetPasswordMail;
En son olarak mesaj layout’unun içeriğini de değiştirmemiz gerekecek. Bunun için aşağıdaki kodu konsolda çalıştırın.

php artisan vendor:publish
ve ardından notifications içine gelen dosyanın içeriğini değiştirin.

/resources/views/vendor/notifications

laravel bulunulan menüye göre menü class bilgisini değiştirme (active yapma)

merhabalar. laravelde app.blade.php sayfamız sabit olduğu için ve bu sayfada genelde menü ve footer gibi sabit kalıplar olduğu için çeşitli yerleri dinamik hale getirmemiz zor hale gelebiliyor.

menüde bildiğiniz üzere bir yere tıklanıldığında ve o sayfa açıldığında o tıklanılan alan farklı bir görünüm alır. bunu laravelde nasıl yaparız aşağıda kısaca anlatıcam.

sayfamızın linki “/bayram/” olsun. hemen app.blade sayfasında menümüzde yer alan bayram linkinin bulunduğu div veya li etiketine gelip

yok linkimiz “bayram/1/edit” diye gidiyorsa

atıyorum link “bayram/ismailulukul” diye gidiyor ve biz ismailulukul yazısını görünce menümüz aktif hale gelsin istiyorsak

hadi kolay gelsin

laravel seeding ve factory – random kayıt ekleme


factory ile bir sürü kaydı bi anda girebilirsiniz. örnek factory oluşturma;

hemen oluşturulan dosyaya giriyoruz. şöyle bir kod giriyoruz siz kendi tablonuza göre güncelleyin

faker kütüphanesi yoksa yukarıya ekleyin. o otomatik oluşturmamızı sağlıyor. App\urunler yazan yere kendi modelinizi koymayı unutmayın.

ya kardeşim bana başka özellikler lazım kolonlarımda ad soyad felan var dersen https://github.com/fzaninotto/Faker buraya girip fakerin sana neler sağladığını görebilirsin.

kullanmak için basit bir kontroller oluşturun ve oraya

eğer 100 kayıt eklemek istiyorsak aynı anda;

şimdi diyeceksiniz ben her seferinde bunu kontroller ile yazmak zorunda mıyım? tablolarımı sıfırladım yine tekrar tekrar bunu mu tanımlıcam derseniz seed yapısı bizi kurtarıyor.

aşağıda yazıyor ama bilenler için buraya kısayol yapıyorum. controllera yazacağın metni run içine yazıyorsun oluyor bitiyor daha sonra aşağıdaki artisan db seed komutunu yazıp çalıştırıyorsun bu kadar. anlamadıysan aşağıyı oku eminim çözeceksin.

seeder kullanımı

database/seed/databaseseeder.php içinde run fonksiyonu içine basit bi insert cümlesi yazalım daha sonra aşağıdaki komutu yazalım.

yok ya ben kendi seeder dosyamı oluşturucam dersen;

diyorsun. sonra bunun içine bir şeyler yazdıktan sonra bunu çalıştırmadan önce yine DatabaseSeeder.php içine gidip diyoruz ki uruntableseeder diye bişi oluşturdum sana bi emir gelirse bunu da çalıştır.

 

laravel migrations kullanımı

laravel migrationsları ilk olarak çalıştırma komutu;

bu işlemi geri almak için

kendi tablomuzu oluşturmak için komutumuz

https://laravel.com/docs/5.8/migrations

kolon tiplerini burada görebilirsiniz.

örnek olması için:

php artisan migrate ile veritabanına uygulayabiliriz tekrardan.

sonradan bir kolon ekleyeceksek;

reset ile de herşeyi silebiliriz.

refresh ile de migrate ile eklediğimiz tüm kolonları silip yeniden yükleyebiliriz.

en son fresh özelliği geldi. bunu kullanırken dikkat edin. bunun özelliği tüm database tablolarını silip migratede yer alan tabloları ekliyor. migrate dışında manuel oluşturduğunuz tabloları da siliiiiiyoooor.

 

laravel toastr paketi

ile ekliyoruz. config/app.phpyi açıyoruz. laravel 5.5üstü için gerek yokta olur da çalışmaz diye

config klasörü içine toastr.phpnin düşmesini istiyorsak aşağıdaki kodu yazıyoruz. bunu yazın bence çünkü buradan çıkan mesajların tasarımsal değişikliklerini yapıyoruz. bulunsun.

view dosyamıza toastr css ve jsyi eklememiz gerekli. bu da basit.

kullanımı ise çok basit. controller’da işlemi bitirdik redirect yaptık. yapmadan önceki koda aşağıdakilerden birini yaz yolla. otomatik çıkacak.

ayrıntılı bilgi https://github.com/yoeunes/toastr

laravel proc open hatasını göstermeme

laravelde bir değişkeni yanlış yazsam proc open hatası alıyordum. bunu kapatıp direk hatanın kendisini görmek için terminale

sonra config/flare.php dosyasını açıp

false yapıyoruz bu kadar.

laravel migrations

migrasyon oluşturmak için artisan komutu;

public function up içine;

gibi tablo özelliklerini yazıyoruz. veri tipleri burada ayrıntılı bi şekilde yazıyor.

örneğin bir urun tablonuz olsun. ona kategoriler diye bir tablo daha oluşturacaksınız. eğer o kategorilerden birini sildiğimizde o kategoriye ait ürünlerin de silinmesini istiyorsak

urun tablosundaki 1 numaralı ürünü sildiğimizde kategori tablosunda da 1 numaralı urun_id’sine sahip ne varsa sil dedik.

çalıştırmak için migration’ı;

değişiklik yaptıysak