Skip to content

sabricakir/crud_app_with_hotwire

Repository files navigation

CRUD APP WITH TURBO STREAMS & TURBO FRAMES

Herkese merhabalar, bu projemde CRUD(Create Read Update Delete) islemlerini gerceklestiren basit bir mesajlasma uygulamasi gelistirdim. Ayni zamanda Turbo frames&streams teknolojileri ile birlikte SPA(Single Page Application) olusturmaya da calistim.

Isterseniz hic uzatmadan projemi tanitma kismina geceyim..

CREATE

Oncelikle projemde create islemi cok basit bir sekilde isliyor body kismina mesajinizi yaziyorsunuz ve create dediginiz anda sayfa yenilenmeden mesaj ekrana dusuyor. Burda eklemeliyim ki model kisminda body icin validation ekledigimden dolayi body kismi bos kalamiyor eger bos bir sekilde create ederseniz hata mesaji da yine sayfa yenilenmeden ekrana gonderiliyor.

create 1 create 2 create code

UPDATE

Update isleminde ise create de oldugu gibi edit this message butonuna bastiginiz anda sayfa refresh edilmeden edit formu karsimiza cikiyor ve update message dedigimizde de yine sayfa refresh edilmeden update edilmis mesaj ekranimiza geliyor.

update 1 update 2 update code

DELETE

Gelelim delete islemine aslinda yine create ve update de oldugu gibi aynı process calisiyor destroy message butonuna bastiginiz anda mesaj db'den siliniyor ve sayfa refresh edilmeden messages listemize bu degisiklik yansiyor.

delete 1 delete 2 delete code

Prepend Message

Create message butonuna bastiginizda dikkatinizi cekecegini umdugum sekilde mesaj en uste ekleniyor. Bunu turbo stream'in prepend fonksiyonu ile gerceklestiriyoruz eger mesajlarin alt alta eklenmesini isterseniz prepend yerine append demeniz yeterli olacaktır.

Message Counter & Time Zone & Notifications

Dikkat ettiyseniz sayfanin en ustunde zamani gosteren bir alan var bunu ekleme sebebim siz her mesaji create, update ya da delete ettiginizde sayfanin refresh olmadigini kanitlamak icin eger sayfayi refresh ederseniz goreceksiniz ki zaman degisiyor.

Yine sayfanin basligi olarak en ustte There are 'number' messages ibaresini gorecegeniz gibi bunu da stream kullanarak gerceklestirdim ve bu sekilde mesaj eklendiginde ya da silindiginde message counter guncelleniyor.

Son olarak mesaj create update delete ettiginizde yaptiginiz isleme gore yukarida bir notification beliriyor bu notification'in icerigi 'message id' created/updated/deleted seklinde ve yine bunu da stream ler araciligiyla gerceklestiriyoruz.

time code index code

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages