เมื่อ 2-3 ปีก่อนเห็นจะได้ ผมเปิดดู Tutorial ของ Django แล้วก็งงๆ จนปิดไป. แต่ว่าตอนนี้ก็พออ่านรู้เรื่องขึ้นบ้างเพราะว่ามีประสบการณ์กับ web framework อื่นๆ มาพอสมควร กอปรกับพี่ต้นเริ่มเขียนอะไรบน Django ไปบ้างแล้ว ผมก็พลอยได้ดูตัวอย่างไปด้วย.
ผมก็เริ่มจาก install เลย บน Ubuntu มันง่ายมากๆ
sudo aptitude install python-django
แค่คำสั่งเดียวเสร็จเลย :-P … แต่ว่าอันนี้ไม่รวม deploy ด้วย mod_python หรือ fastcgi นะครับ. เรื่อง deploy ผมหวังพึ่งลิ่วอย่างเดียว :-P.
ต่อจากนั้นผมก็เข้าไปดู Tutorial ที่ web ของ Django แต่ว่าก็ต้องระวังนิด เพราะว่า Tutorial ที่ link ไปจากหน้าแรกเป็นของ development version ซึ่งมันต่างจาก stable version อยู่ (ทำตาม tutorial แล้วเจ๊งแน่นอน …ประมาณนั้น)
สำหรับ Django 0.96 เข้าไปหน้า http://www.djangoproject.com/documentation/0.96/tutorial01/ ได้เลย. ผมก็ทำตามก็ใช้ได้ … ใช้ก็รู้สึกว่าเนียนและเร็วดี พอจนกระทั่งมาถึง admin site ที่อาจจะเรียกว่าเป็น highlight อย่างหนึ่งของ Django เลย. ลองใช้ดูแล้วก็เนียนดีอีกเหมือนกัน … เท่าที่เล่นอย่างผิวเผินมันก็คล้ายๆ phpmyadmin นี้เอง เอาไว้ให้ admin มาแก้ database.
[เข้าเรื่อง]
*อาจจะ* เป็นเพราะว่า Django ออกมานานพอสมควร framework ตัวอื่นๆ ก็มักจะมีอะไรคล้ายๆ Django admin site มาเหมือนกัน เช่น Catwalk ของ Turbogears และสำหรับ Pylons เท่าที่ search มาได้ก็มี adminpylon (ผ่านเว็บนี้) กับ pails-admin, ส่วน CakePHP ทำ admin site เป็นแบบ CRUD เลย เป็นต้น
Catwalk เท่าที่ดูผ่านๆ ก็เข้าไปเขียน code เพิ่มเข้าไปใน model เหมือน Django แต่ผมไม่รู้ว่า customize อย่างไร. CakePHP ต่างออกไปคือเพิ่ม action เข้าไปใน controller แล้วที่เหลือก็ทำแบบ CRUD ธรรมดา. เท่าที่ดูผ่านๆ อีกเหมือนกัน pails-admin ผมอ่านไม่รู้เรื่อง :-P. adminpylon เหมือนจะสร้าง controller แยกออกมาอีกต่างหากเลย แล้วก็ดูจะคล้ายๆ จะ customize ได้แบบของ Django.
อีกตัวหนึ่งที่อาจจะจัดเข้ากลุ่มนี้ได้คือ FastData ของ Turbogears ปกติเอาไว้ทำ CRUD ถ้าจัดการเรื่อง admin route หน่อย (ไม่รู้ Turbogears ทำได้หรือเปล่า) ก็อาจจะออกมาคล้ายๆ CakePHP … แต่เหมือน Catwalk ไม่รู้ว่า customize อย่างไร