Ruby on Rails ile "Merhaba Ceviz"

Merhaba Ceviz / Hello Ceviz

Artık her dilde olduğu gibi Ruby on RailsSimsek Cakti ile klasik Merhaba Dünya yapalım.. Ama bizim yapacağımız diğerlerinden farklı olsun, Dünyaya değilde ceviz'e merhaba diyelim. Bunuda Türkçe ve İngilizce olarak yapalim, Hani maksat yapıyı daha iyi öğrenmek.. Komik olmadigini biliyorum :-)

Attachapp/controllers/
Dosya adı: ceviz_controller.rb

class CevizController < ApplicationController 
  def index 
     @zaman= Time.now 
    end 
  def tr 
  end 
  def en 
  end 
end 

Attachapp/views/ceviz/
Dosya adı: index.rhtml

<html> 
<head> 
<title>Cevize Merhaba - Hello to Ceviz</title> 
</head> 
<body> 
<h1>Ceviz'e Merhaba</h1> 
<ul>   
<li><a href="ceviz/tr">Turkce</a></li>  
<li><a href="ceviz/en">Ingilizce</a></li>   
</ul> 
<h2><a href="http://forum.ceviz.net">Ceviz Forum</a></h2> 
<p>Saat suan: <%= @zaman %>   
</body>
</html>

Attachapp/views/ceviz/
Dosya adı: tr.rhtml

<html>
<head>
<title>Merhaba Ceviz!</title>
</head>
<body>
<p>Merhaba Ceviz</p>
<p><a href="/ceviz">Geri Don</a></p>
</body>
</head>

Attachapp/views/ceviz/
Dosya adı: en.rhtml

<html> 
<head> 
<title>Hello Ceviz!</title> 
</head> 
<body> 
<p>Hello Ceviz!</p> 
<p><a href="/ceviz">Back</a></p> 
</body> 
</head>
 

ScreenShots

Ceviz'e Merhaba

Türkçe Merhaba

İngilizce Merhaba

İstersek sadece RoR (Ruby on RailsSimsek Cakti) Görünümlerini kullanmadan, Merhaba olayını Denetleyicilerden (Controllers) şu kodlarlada merhaba diyebiliriz..

class CevizController   < ApplicationController  
  def index  
    render_text "Cevize Merhaba!   - Hello Ceviz!"  
  end 
  def en 
    render_text "Hello Ceviz!" 
  def tr 
    render_text "Merhaba   Ceviz!" 
  end 
end	

Ama bu kodla sadece amacımıza ulaşabilirdik, Görünüm veya HTML taglarimizi uygulayarak farkli görünüme kavuşamazdık..

Adresler ise şu şekilde olurdu.Dilime dokunmayin :-) Ve http://localhost:3000/ceviz linkine girdigimizde tr/en linklerine gecis yapamazdık.

  • http://localhost:3000/ceviz
  • http://localhost:3000/ceviz/tr
  • http://localhost:3000/ceviz/en
Biraz not.. Üstte yazdığımız merhaba ceviz, uygulamasında linkleri Views'de bildiğimiz HTML kodu olan <a href=""> </a> taglarıyla kullanmıştık, Eger istersek bunu yine views dosyamızda,Arrows link_to tagını kullanarak link olayını gerçekleştirebiliriz. Böylece RoR (Ruby on RailsSimsek Cakti) metot yapılarını kavramış oluruz.

Tag Kullanımı

<%= link_to "Link Adı", { :action=> "Link Adresi"} %>

  1. <p><%= link_to "Geri Don", { :action=> ""} %></p>
  2. <p><%= link_to "Geri Don", { :action => "" }, :popup => true %></p>
  3. <p><%= link_to "Geri Don", { :action => "" }, :popup => ['new_window', 'height=300,width=600'] %></p>
  4. <p><%= link_to "Geri Don", { :action => "" }, :confirm => "Emin misiniz?", :post => true %></p>
  1. Düz olarak link verir.
  2. Tam sayfa Popup olarak yeni pencerede açarak link verir.
  3. Popup penceresi açarak ve boyutlandırarak link verir.
  4. Açılacak pencere için, bizi uyarır.
Biraz not.. Dipnot: <p> </p> tagları sadece views de kullanım için yazılmıştır. link_to tagıyla hiç bir alakası yoktur.

Arrows Örnek kullanım, (üstteki app/views/ klasorundeki "tr.rhtml" ele alarak):

<html>
<head> 
<title>Merhaba Ceviz!</title> 
</head> 
<body> 
<p>Merhaba Ceviz</p> 
<p><%=   link_to "Geri   Don", { :action=> ""} %></p> 
<p><%= link_to "Geri Don", { :action => "" }, 
:popup => true %></p> <p><%= link_to "Geri Don", { :action => "" },
:popup => ['new_window', 'height=300,width=600'] %></p> <p><%= link_to "Geri Don", { :action => "" },
:confirm => "Emin misiniz?", :post => true %></p> </p> </body> </head>

Bir sonraki makalede görüşmek üzere.. Dilime dokunmayin :-)

Other Articles:

 

Hiratech Design Studio :-)

Mr. Resul Gok
Hiratech Design Studio
http://www.hiratech.com

I love Ruby on Rails