เราสร้าง application โดย Rails โดย
rails app_name
ซึ่งจะสร้าง directory ชื่อ app_name และไฟล์อะไรกระจุกกระจิกจำนวนหนึ่งซึ่งเราจะยังไม่สนใจตอนนี้
cd app_name
ทีนี้สร้าง controller โดยใช้คำสั่ง
ruby script/generate controller con_name
ซึ่งจะสร้างไฟล์หลายไฟล์เหมือนกัน แต่เราจะสนใจแค่อันเดียวก่อนคือ app/controllers/con_name_controllers.rb ซึ่งเป็น class กลวงๆอันนึง หากเราสร้าง method ขึ้นมาใน class นี้ จะเรียกว่าเป็น action
action นี้จะทำงานเมื่อเราเรียก http://host_name/con_name/action_name
แต่เราต้องกำหนดรูปแบบการแสดงผลให้ด้วยโดยการสร้าง view ขึ้นมา โดย view ที่จะตอบสนองกับ action นี้จะเป็นไฟล์ app/views/con_name/action_name.rhtml
ไฟล์ rhtml นี้ก็คือไฟล์ html ที่อนุญาตให้แทรกโค้ด ruby เข้าไปได้ ระหว่างแท็ก <% %> เรียกว่า ERb (Embeded Ruby) เหมือนกับ php หรือ asp นั่นเอง
โดยรูปแบบนี้เองเราจะเห็นว่า controller กับ view นั้นทำงานใกล้ชิดกัน โดยเราจะกำหนดข้อมูลที่จะแสดงผลไว้ที่ attribute ของ controller ซึ่งเราสามารถดึงมาใช้ได้ที่ view
ตัวอย่างดังนี้ครับ
ฝั่ง controller (apt/controllers/say_controller.rb)
class SayController < ApplicationController
def hello
@time = Time.now
end
def goodbye
end
end
ที่ฝั่ง view (apt/views/say/hello.rhtml)
แทรกโค้ดนี้เข้าไปเพื่อแสดงเวลา
<%= @time %>
แทรกโค้ดนี้เข้าไปเพื่อแสดงลิงก์ไปยัง action goodbye
<%= link_to "Goodbye!" , :action => "goodbye" %>
เป็นตัวอย่างง่ายๆของการใช้งาน Rails ครับ
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น