Tablomuzda kayıt ekleme yahut güncelleme anında mutlaka doldurulması gereken alanlar olabilir.
Giriş
Rails tümleşik bir geliştirme ortamıdır. Yazılımın bölümleri arasında ki düzeni siz belirttiğiniz sürece otomatik olarak sağlayabilir.
ActiveRecord modülü gerekli alanların kontrolünü yapmak için bizlere oldukça geniş imkanlar sunar.
Avi formatında, yüksek çözünürlüklü ekran görüntüsüne ulaşabilirsiniz.
validate fonksiyonu
ActiveRecord sınıfı ve buna ait alt sınıflar “validate” fonksiyonuna sahiptir. Bu fonksiyonu yeniden yazarak kendimize göre özelleştirebiliriz.
validate fonksiyonu her kayıt öncesinde çalışır.
# ...
# ...
protected
def validate
errors.add(:isim, "Aynı isimle daha önce mesaj yazılmış") if isim_kontrol(isim)
errors.add(:soyisim, "Boş bırakılamaz") if soyisim.empty?
end
end
Bazı kontrollerin sadece yeni bir kayıt anında yapılmasını ya da bazılarının sadece güncelleme anında yapılmasını isteyebiliriz.
validate_on_create & validate_on_update
Yalnızca yeni kayıt anında kontrol yapılmasını istiyorsak “validate_on_create” fonksiyonunu yeniden yazabiliriz. Aynı biçimde, yalnızca güncelleme anlarında kontrol için de “validate_on_update” fonksiyonunu yeniden yazabiliriz.
Hazır Denetleme Fonksiyonları
Rails, genel denetlemeler için bize hazır fonksiyonlar sunmuştur.
- Alanın mutlak doluluğunu kontrol etmek için: validates_presence_of
Örnek kullanım: validates_presence_of :isim - İçeriğin belirli formata uyma zorunluşuğı: validates_format_of
Örnek kullanım: validates_format_of :email, :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i - İçeriğin uzunluğunun kontrolü: validates_length_of
Örnek kullanım: validates_length_of :isim, :maximum=>30 - İçeriğin sayısallığının kontrolü: validates_numericality_of
Örnek kullanım: validates_numericality_of :oy, :only_integer => true - İçeriğin kayda özel olmasının kontrolü: validates_uniqueness_of
Örnek kullanım: validates_uniqueness_of :isim, :on => :create
Sunum
Makaleye ait sunumu izleyerek örneklerin çalışmasını ve detaylı kullanımını görebilirsiniz.
Avi formatında, yüksek çözünürlüklü ekran görüntüsüne ulaşabilirsiniz.
Yüzyılın Uygulaması: SlideShare 09/07/07
Bu yüzyılın tabiri her ne kadar hiçbir zaman gerçeği yansıtmasa da slideshare’de yüzyılsal olaylardar biri imiş. Verdim odp dosyasını flasha çevirdi ve bunu yapmak için 10 sn. de kayıt olup, 10 sn. de dosyayı attım, 20sn. süremi aldı. Kullanım kolaylığı budur.
Seminer Dosyaları 05/05/07
Sunum Dosyası (Open Office) : Rails İle Ağ Uygulamaları Geliştirimi
Örnek Uygulama Dosyası






