Olay kısaca şöyle, eÄŸer 404 sayfanızın boyutu 512 byte’dan daha az ise Internet Explorer bu sayfayı göstermiyor onun yerine kendi 404 sayfasını gösteriyor.

Hatta bir kaç denememe göre - yüzde yüzlük doğruluk payı olmayabilir - sayfada bulunamayan bir imge var ve 404 sayfanız 512 baytdan küçük ise bulunan sayfayı dahi göstermiyor.

Edge Rails’e has_finder eklentisi dahil edilmiÅŸ ve ismen named_scope adını almış.

Biri yukarıdaki cümleyi kursa hiç heyecan duymazdım, çünkü bilmezdim ki has_finder eklentisinin ne kadar güzel olduğunu.

Misalen;

Åžu iken;

class Yorum < ActiveRecord::Base
 
 
def self.onay
   
find(:all, :conditions => {:onay => true})
 
end
  ..

Åžu oldu:

class Yorum < ActiveRecord::Base
 
named_scope :etkin, :conditions => { :onay => true }
end

Aşağıdaki örnek ile farklı bir kullanım alanını da görebiliriz (orjinali).

class User < ActiveRecord::Base
 
named_scope :inactive, :conditions => {:active => false} do
   
def activate
     
each { |i| i.update_attribute(:active, true) }
   
end
 
end
end
 
# Re-activate all inactive users
User.inactive.activate

Gibi.

named_scope yazılım geliştiricisinin işini kolaylaştıran, ruby dili esnekliğinden yararlanan güzel bir çalışma olmuş. Faydalı.

30 AÄŸustos’ta yayımlanmış bir yazı, diÄŸer editörlerle de ufak bir karşılaÅŸtırma yapılmış. Åžimdiye kadar gözden kaçmış bir inceleme olmasına üzüldüm.

Buradan ulaşılabilir: Netbeans THE best ruby on rails IDE

Case, If Söz Dizimi    28/08/07

durum = 1
 
# if kullanımı
 
if durum == 0
 
puts "Hata var!"
elsif durum == 1
 
puts "iÅŸlem baÅŸarılı"
elsif durum == 2
 
puts "baÅŸka bir mesaj"
elsif durum == 3
 
# falan
end
 
# case kullanımı
 
case durum
 
when 0
   
puts "hata var"
 
when 1
   
puts "iÅŸlem baÅŸarılı"
end

ipucu

Eğer bir fonksiyondan dönen integer değere göre ekrana mesaj yazdırmak isteniliyorsa en kısa yol şu olabilir:

  1. # örnek bir fonksiyon
  2. def durum(kosul)
  3.   kosul
  4. end
  5.  
  6. mesajlar = ["hata var", "iÅŸlem baÅŸarılı", "mesaj üç", "mesaj dört"]
  7. puts mesajlar[durum(0)]
  1. isim = 'İsmim'
  2.  
  3. puts "isminiz: #{isim}"
  4. # çıktı: İsminiz: İsmim
  5.  
  6. puts 'İsminiz: #{isim}'
  7. # çıktı: İsminiz: #{isim}

%> ile -%> farkı?    27/07/07

Åžudur:

< %= "Murat" %>
< %=
"ÇELİKER" %>
Çıktı:
Murat
ÇELİKER
< %= "Murat" -%>
< %=
"Çeliker" -%>
Çıktı: MuratÇeliker

Sevgili Gürkan‘ın sorusuna istinaden.

http://slateinfo.blogs.wvu.edu/plugins/textile_editor_helper

kurulum

  • script/plugin install http://svn.webtest.wvu.edu/repos/rails/plugins/textile_editor_helper/
  • rake textile_editor_helper:install
  • < %= textile_editor 'giris', 'icerik' -%>
  • < %= textile_editor_initialize -%>

layout ‘duzen’    07/03/07

“layout” ve sayfa düzeni üzerine

Ruby On Rails, normal Å?artlar altında sayfayı ekrana yansıtmak için ayrı bir klasörde (app/views/…) bulunan “.rhtml” uzantılı dosyaları kullanır (eruby altyapısını kullanır). Hangi dosya olduÄ?unu ise “denetleyici adı”/”sayfa ismi”.”rhtml” Å?eklinde bulur. (”Partial” dosyaların baÅ?ına “_” koyarak…)
Normal Å?artlardan kasıt eÄ?er fonksiyon sonunda sayfaya veri döndürülmemiÅ? ise (örn: render :partial, render :text gibi render komutları “sayfaya veri döndüren” komutlardır.) anlamına gelmektedir.

Normalde ekrana görünüm dosyasını yansıtırken eÄ?er “app/views/layouts” klasöründe “application.rhtml” dosyası mevcut ise yansıtılacak olan görünüm dosyası “application.rhtml” dosyasında < %= @content_for_layout %> yahut < %= yield %> bulunan yere yerleÅ?tirilir.

Ã?rneÄ?in yalnızca yönetim paneli için kullanılacak bir sayfa düzeni oluÅ?turmak isterseniz oluÅ?turacaÄ?ınız “.rhtml” dosyasını “app/views/layouts” dizinine koyduktan sonra, yönetim paneline ait denetleyicilere bunu bildirmeniz gerekecektir.

# Genel Yönetim Düzenimiz
# app/views/layouts/yonetim.rhtml
#
<
html>
....
<
body>
< %=
@content_for_layout %>
<
/body>
<
/html>
 
#
# Denetleyici Dosyamız
#
class Yonetim::TestController < ApplicationController
 
   
# Genel sayfa düzeni olarak 'yönetim'i kullan
   
layout 'yonetim'
   
   .....

Yukarıdaki denetleyici tüm sayfalarında (sayfalardan kasıt; oluÅ?turulmuÅ? fonksiyonlardır) kendisini “yonetim.rhtml” dosyası içerisine gömecektir.

Fakat, yalnızca alanlık olan görünüm dosyaları bunun dıÅ?ındadır. (Alanlık görünüm dosyaları dosya isimlerinin baÅ?ına “_” alırlar ve render :partial ile sayfada herhangi bir yere yansıtılabilirler.)
“Partial” görünüm dosyaları sayfa düzeni ile beraber ekrana yansıtılmazlar.

Sayfada yayımlanan yazılar aksi belirtmedildiği sürece Murat Arif Çeliker'e aittir. Yorumlar, yorumu yapan kullanıcıların kendi görüşleridir.
açılış - deneyhane - tasarılar - hakkımda - iletişim -

Sitede altyapı olarak Wordpress kullanılmıştır.