ที่จริงช่วงนี้ทำโปรแจคเกี่ยวกัน ruby on rails เยอะมากๆ บอกได้ว่าหมกหมุ่นเลยละเลยได้เอาอะไรที่ลองและนำเอาไปใช้ในโปรแจคจริงๆ มาถ่ายทอดสู่ผู้ที่กำลังสนใจอยู่โดยหวังให้ท่านเป็นผู้พัฒนาเว็บด้วย ruby on rails เหมือนกัน สำหรับวันนี้มาแนะนำการใช้ text field with auto complete ซึ่งเป็น plugins สำหรับอะไรดูตามชื่อคงจะรู้อยู่นะครับ
โดยชื่อ plugins คือ rails-auto_complete โดยหากใครต้องการเขียนตรงไปตรงมาตาม plugins ของเขาก็สามารถอ่านเอาได้ทั่วไปครับส่วนของผมเอาเป็นว่าไม่ใช้แบบเขาต้องการละกันเนื่องจากสิ่งที่ต้องการแตกต่างออกไปนิดหน่อย เริ่มต้นด้วยการโหลด plugins มาก่อนเลยครับ http://github.com/rails/auto_complete/tree/master เมื่อโหลดมาแล้วลองเล่นดูครับหากว่าต้องการแบบที่ผมอธิบายลองมาดูครับ
1 | <%= text_field_with_auto_complete :txaction, :customer_code, { :size => 15 }, { :url => formatted_findjs_customers_path(:js), :method => :get, :with=>"'code='+element.value" } %> |
สำหรับโค้ดตัวนี้เป็นการเรียก action=> ajax_customer_info สำหรับการประมวลผลครับ และส่ง parameter คือค่าใน field txaction_customer_code ครับ โดยกำหนดตรง :with=>”‘code=’+element.value” ส่วนถัดไปอยู่ใน controller ครับ
1 2 3 | def findjs @customer = Customer.find(:all, :conditions => ['code LIKE ?', "%#{params[:code]}%"]) if params[:code] end |
จะเป็นการค้นหารหัสลูกค้านั้นทั้งหมดไปโชว์ใน field customer_code ครับ
37 views


