ผลต่างระหว่างรุ่นของ "418342 ภาคปลาย 2552/ปฏิบัติการที่ 11"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 14: แถว 14:
 
== แก้ไข controller ของ Product ==
 
== แก้ไข controller ของ Product ==
 
สมมติว่าเราต้องการให้มีการทำ autocomplete ของฟีลด์ name ให้เราแก้ไข ProductController ดังต่อไปนี้
 
สมมติว่าเราต้องการให้มีการทำ autocomplete ของฟีลด์ name ให้เราแก้ไข ProductController ดังต่อไปนี้
 +
<geshi lang="ruby">
 +
class ProductsController < ApplicationController
 +
  auto_complete_for :product, :name
 +
 +
  ...
 +
 +
end
 +
</geshi>

รุ่นแก้ไขเมื่อ 01:22, 5 กุมภาพันธ์ 2553

ในปฏิบัติการนี้เราจะใช้ AJAX ในการทำ autocomplete ซึ่งหมายถึงตอนที่มีการพิมพ๋ข้อความในฟอร์ม ตัวเวบแอพพลิเคชันช่วยเลือกคำที่เราต้องการพิมพ์ให้

เริ่มสร้างแอพพลิเคชัน

เราจะสร้างแอพพลิเคชันของสินค้า โดยสินค้าแต่ละอย่างจะมีสมบัติสองอย่างคือ ชื่อ (name) และราคา (price)

> rails shop
> cd shop
> ruby script/generate scaffold product name:string price:decimal
> rake db:migrate

ลงปลั๊กอิน auto_complete

โค้ดส่วนที่จะช่วยเราทำ autocomplete นั้นอยู่ในปลั๊กอินชื่อ auto_complete เราสามารถลงปลั๊กอินนี้ด้วยการสั่ง

> ruby script/plugin install auto_complete

แก้ไข controller ของ Product

สมมติว่าเราต้องการให้มีการทำ autocomplete ของฟีลด์ name ให้เราแก้ไข ProductController ดังต่อไปนี้ <geshi lang="ruby"> class ProductsController < ApplicationController

 auto_complete_for :product, :name
 ...

end </geshi>