Merhaba arkadaşlar, son zamanlar da web tarafında Ruby ismini duymuşsunuzdur. Ruby dilinin bir kütüphanesi olan Ruby on Rails ile sunucu taraflı web sayfası oluşturmayı küçük bir örnek ile anlatacağım.Öncelikle örneğimizi Paiza Cloud üzerinden yapacağımı belirteyim. 4 Saat süreli bize ücretsiz sunucu veren paiza, kısa örnekler için yeterli olacaktır.
Paiza’ya üye olduktan sonra New Server’a tıklayıp Web application development: altından Ruby on Rails ‘i seçip alt kısımda yer alan new server diyerek yeni bir sunucu açmış oluyorsunuz. Karşımıza gelen browser’ı kapatıp terminal’e tıklıyor ve başlıyoruz.
Basit bir öğrenci kayıt sayfası oluşturalım. Öğrenci Adı, Soyadı,numarası ve doğum yılı olsun.
Bunun için öncelikle bir sunucumuzda bir proje açıyoruz.
rails new ogrenci
diyerek oluşturmuş oluyoruz. Kayan yazılar bittikten sonra açmış olduğumuz proje dosyasına giriyoruz.
cd ogrenci
şimdi ise sayfamızın içinde olacakları Scaffold kullanarak yazıyoruz.
rails g scaffold ad soyad:text numara dogumTarihi:integer
diyoruz, fakat bu aşamada sqlite sürümü hatası bulunuyor. Bu yüzden Gemfile dosyasına girip gem ‘sqlite3′,’>1.3′,'<1.4′ şeklinde düzenleme yapmamız gerekmektedir.
Bu adımdan sonra tekrar
rails g scaffold kayıt isim soyisim:text numara dogumTarihi:integer
bu aşamadan sonra
rake db:migrate >
diyoruz. (Yapılan değişikliklerin veritabanına kaydı için)
[the_ad_placement id=”sayfa-arasi”]
son olarak da yaptığımız sayfanın açılması için
rails s
diyoruz ve sol tarafta 3000 yazan kısıma tıklıyoruz ve üst url kısmına kayits yazıyoruz. Ben ogrenci kayıt diye oluşturduğum için url kısmına ogrenci_kayits şeklinde giriyorum.
New Ogrenci Kayit dediğimizde ise aşağıdaki gibi bir sayfa karşımıza çıkıyor.
Burada Numara kısmını boş bıraktığımız için text olarak kabul etmiş bunu oluşturur iken numara:integer şeklinde yaparak düzeltebilirsiniz.
Şimdi bir kaç öğrenci ekleyelim.
[the_ad id=”1292″]
Bu kısımdan da düzenleme (edit) silme (destroy) ve göster (show) gibi işlemler yapabiliyorsunuz. Çok kaliteli bir örnek olmadı ama genel olarak ne yapacağımızı anlamışsınızdır umarım. Anlamadığınız kısımları yorum olarak ya da iletişim üzerinden sorabilirsiniz. Kodları kendiniz de deneyerek farklı örnekler yapınız.