เมื่อวันที่ 18 ธันวาคม 2555 ที่ผ่านมาทางทีมงาน Pylons Project ได้ประกาศออกรุ่น Pyramid (Python web framework ที่พัฒนาขึ้นใหม่จากทีมงาน Pylons เดิม ซึ่ง Pyramid ไม่ใช่ full stack framework อย่าง Django) เวอร์ชัน 1.4 อย่างเป็นทางการ หลังจากปล่อยรุ่นทดสอบมาพักใหญ่ โดยมีคุณสมบัติเด่นๆ ดังประกาศไว้ที่ What’s New In Pyramid 1.4 ต่อไปนี้
- สามารถเพิ่ม predicate ได้เอง โดยปรกติแล้ว Pyramid จะต้องกำหนดชื่อ route name ของแต่ละ view จากนั้นต้องระบุว่า route name นั้นจะทำงานเมื่ออ้างถึง URL อะไร แต่การเพิ่มขึ้นในส่วนนี้ เราสามารถละเว้นการกำหนดชื่อ route name ไว้ได้ โดยสามารถระบุไว้่ว่าจะให้ request ที่มีคุณลักษณะอย่างไร ทำงานที่ view ไหนแทน เช่นการระบุ request method หรือ ลักษณะของ Content-Type เป็นต้น
- ปรับเปลี่ยน JSON serialization ได้ง่ายขึ้น โดยทั่วไป Pyramid สามารถเลือกได้ว่าจะใช้อะไรเป็น renderer เช่น Mako Chameleon Jinja2 หรือแม้กระทั่ง JSON แต่เนื่องจาก JSON ที่เตรียมไว้ให้นั้นไม่สามารถเปลี่ยนทุกรูปแบบเป็น JSON ได้ เนื่องจากไม่ได้ระบุไว้ในมาตฐานของ JSON ว่าต้องใช้รูปแบบใด เช่น วัน หรือ เวลา (datetime) เพื่อช่วยให้สามารถจัดการกับรูปแบบที่เหล่านั้นได้ตามต้องการ จึงเพิ่มการปรับปรุง JSON ส่วนนี้เข้ามา ส่งผลให้การสร้าง view ที่มีเอาท์พุทเป็น JSON สามารถทำงานได้ง่ายขึ้น
-
ปรับปรุงการทำงานในส่วนของ Mako และ Chameleon ให้สามารถสนับสนุนการทำงานใหม่ๆ ของเทมเพลตนั้นๆ ได้
นอกจากนี้ยังมีคุณสมบัติเล็กๆ น้อยๆ ที่เพิ่มเข้ามาแต่ผมเห็นว่ามันสำคัญและสามารถใช้งาน Pyramid ได้สะดวกขึ้น เช่น
-
request_method เราสามารถระบุได้ว่าจะเลือกให้ http method ใดสามารถทำงานได้บ้าง วิธีนี้ช่วยให้เขียน REST ได้ง่ายขึ้นด้วย
- AuthTktAuthenticationPolicy รองรับการใช้งานอัลกอริทึมแฮชใหม่ๆ เช่น sha512
นอกจากนี้สามารถติดตามรายระเอียดเพิ่มเติ่มได้ที่