Laravel Eğitim

Merhabalar…

Bu yazımızda şu an dünyanın en çok kullanılan frameworkü olan Laravel in bazı kodlarını ve kullanımlarını örnekleyeğim. Bu yazı Laravel kullanmaya devam ettiğim müddetçe güncellenecektir. Yazıda belli bir mantık ve sıra gözetmeden kullandığım kodları dönüp bakabilmek amacıyla buraya aktaracağım. Bütün örnekler sadece laravel üzerine olmayabilir. Not almaya değer bulduğum bilgiler burada yer alacaktır.

Faydalı olması dileğiyle

Sıfırdan laravel kurmak için bir çok yol vardır.

Bana göre en kolayı:  wamp server kurmanızdır.

indirmek için wamp sayfasını kullanabilirsiniz. İNDİRMEK İÇİN TIKLAYINIZ

Bu yazılımı kurduktan sonra git ve github  kurmanız gerekmektedir.

Windows’ta Kurulum

Git’i Windows’da kurmak oldukça kolaydır. mysysGit projesi en basit kurulum yöntemlerinden birine sahip. Çalıştırılabilir kurulum dosyasını GitHub sayfasından indirip çalıştırmanız yeterli:

Kurulum tamamlandığında hem (daha sonra işe yarayacak olan SSH istemcisini de içeren) komut satırı nüshasına hem de standart kullanıcı arayüzüne sahip olacaksınız. (Alıntı: https://git-scm.com/book/tr/v1/Ba%C5%9Flang%C4%B1%C3%A7-Git-in-Kurulumu)

Şimdi sıfırdan laravel kurmak için wamp klasöründe www klasörüne gelip sağ tuş yapın ve “git bush here” tıklayın.

Sonrasında yeni bir laravel kurmak için

 

yada  daha basitçe

 

yazmanız yeterlidir.

Kurulum bitince aşağıdaki görüntüye kavuşmanız gerekiyor.

Kurulum sonrasında laravel e ulaşmak için aşağıdaki gibi adresi girmeniz gerekmektedir.

Şimdilik işler yolunda.  

Laravel auth çözümü (users tablosu otomatik oluşmuyorsa)

NOT::::: laravel auth sisteminde users tablosu oluşturamıyor. bu sorunu çözmek için

app\Providers\AppServiceProvider.php yi açıp içine eklemeniz gereken kodlar var:

kodlara schema ayarlarını yapınca sorunumuz çözülüyor.

tekrar yazmanız gerebilir.

Şimdi sayfamızda kullanıcı adı ve şifre ile giriş yapılabilmesi için çalışalım:

sayfamıza tekrar girdiğimizde ekran aşağıdaki gibi olacaktır.

gördüğünüz gibi login ve register linkleri otomatik olarak geldi.

C:\wamp64\www\blog\app\Http\Controllers\Auth

C:\wamp64\www\blog\resources\views\auth

Buraya dosyaları kopyaladı.

Controller oluşturma

bu komutu yazarak Deneme Controller oluşturduk.

eğer veritabanı işlemleri yapacaksak: düzenle, sil vb işlemleri yapabilmesi için

komutunu çalıştırmamız yeterlidir.

Bu komutla HomeController da index, create, update, show, edit ve destroy metodları tanımlanmış gelir.

Route yönlendirme

Adres satırına blog/deneme yazıldığında artık routes/web.php dosyamıza bu komutu ekleyerek DenemeController daki ‘deneme’  fonksiyonuna yönlendiriyoruz.

Şimdi controllerdan değişken gönderelim:

bu şekilde ‘ad’ değişkenini ->with ile göndereceğimizi belirttik ve alacağı değeri ‘$ad’ olarak  belirledik.

deneme.blade.php dosyasında bunu göstermek için 

burada {{$ad}} ifadesi <?php echo $ad; ?> ile aynı işlemi yapmaktadır.

Farklı örnekler:

burada ? işareti değişkenin boş olabileceğini gösterir.

 

blogum.my yonlendirmesi

Şimdi adres satırında ‘blogum.my’ yazınca laravel sayfasının otomatik açılmasını sağlayan kodu ekliyoruz.

daha sonra tüm sistemleri tekrar çalıştırıyoruz.

wamp için ‘restart all service’

 View yapısı

Genel şablon yapısı

Bu sayfayı “master.blade.php” adıyla kaydedelim.

Bu sayfadan “iletisim.blade.php” sayfası türetmek için 

Blade template

Blade Laravel in template motorudur. Laravel de mutlaka blade kullanmak zorunda değilsiniz. Ancak kullanmak isterseniz “dosya.blade.php” şeklinde kaydetmelisiniz.

ile 

aynı işlemi yapmaktadır.

Yorum satırı için 

yapmak yeterlidir.

html veya javascript  kodlarının çalışması içim değişkenler aşağıdaki gibi !! işaretleriyle basılmalıdır.

 

 Controllerdan değişken göndermek ve gelen değeri basmak için

controllerdan birden fazla değişken göndermek için 

Paket ilave etmek ve yüklemek

Paketlerin hepsini görmek için 
https://packagist.org adresine bakılması gerekir.

html ve form eklentisini kurmak için (laravelcollective)

yazdıktan sonra 

eklenmelidir.

Blade de form örneği

blade in form yapısını kullandığınızda CSRF TOKEN özelliği otomatik olarak çalışır.

Macro kullanımı

 

Diğer her türlü ek bilgi için:

https://laravelcollective.com/docs/master/html

Veritabanı işlemleri

ana dizinde bulunan “.env” dosyası içerisinde gerekli ayarlar yapılmalıdır.

şeklinde olan bilgileri kendinize göre düzenleyiniz.

Model Eloquent Orm

Birey adında bir model oluşturalım

bu komutla beraber 

dosyası oluşacaktır.

Modeldeki tablo adını 

olarak tanımlarız. Eğer tablo ismini belirmezsek yazılım otomatik olarak “s” ekini ekler.

Bir model örneği (soft silme)

 

Eğer primarykey değiştirmek isterseniz:

yazmalısınız. Eğer created_at ve updated_at (oluşturulma ve güncelleme) tarihlerinin kapatılmasını isterseniz:

yazmalısınız.

Her  model veri tabanın da bir tabloyu gösterir.

Birey tablosunda veri işlemek  için 

Controllerda veri çekip blade e göndermek için 

Belli sayıda ve şartlarda veri çekmek için

Belli bir ID ye ait veri çekme

detay için https://laravel-news.com/laravel-firstorfail-forthewin

Bu sorgulama veri varsa çeker yoksa boş döndürür.

Kayıt işlemi için 

Kaydetme (create) işlemi

Laravel Session işlemleri

bu komut ile geldiğimiz yolu sessiona atıyoruz.

veya blade de kullanmak için

session okumak için

Session silmek için :

Bir kere lik kullanım sonrası silinmesi için:

bir kere gösterilir gösterilmez silinecektir.

Controller örnekleri 

Veri çekip diziye atama

ID ye göre arama

kopyalama ve kaydetme

Güncelleme

Select ile veri çekme

Table ile veri çekme

Veri silme

Hard silme – veri silme

Veri silme

Öncelikle ilgili model’i açıyoruz ve alt kısımda belirttiğimiz kod kısmını ekliyoruz.


Mevcut migrate mantığı ile migrate ise alt kısımdaki kod’u ekleyelim.


Yeniden migrate yapmayı unutmayarak kontrol işlemlerini gerçekleştirelim.

Çöp kutusu gibi görüntüleyebileceğimiz şekli.


Silinmiş veriler dahil çekebilmek için;


Diğer bir kullanım şekliyle;


Sadece silinmiş öğelere ulaşabilmek için;


Silinmiş içereği geri kazanabilmek için


Diğer bir kullanım şekliyle;


Ben illa bu veriyi silmek istiyorum derseniz alt kısımdaki kod sizin için;

Çöp kutusu mantığıyla düşünürsek çöp kutusunu temizleme mantığı


Alıntı https://www.kahramaner.com/yazilim/laravel-soft-delete/

Validation kontrolü

Dosya upload

Dosya Upload ve isim değiştirme

 

Rol e göre sorgu

Request ten gelen veriyi değişkene aktarma

User ID okuma

Tarihi okuma

 


 

SQL alan birleştirme CONCAT:

Laravel örneği

Concat başka bir örnek

 

sayfalama paginate için sql örneği

withPath komutu ile larael deki sayfalama işlemine ek url gönderebiliyoruz. 

Blade kısmında okumak için

Yazar: Mustafa Şadoğlu

Mustafa sitemizde 106 yazı eklemiş...

Share