Phalcon 2.0.2 released

จริงๆ ก็เป็นแค่เวอร์ชั่น ย่อย แต่ที่ต้องเขียนถึงก็เพราะรีลีสนี้ มีฟีเจอร์ที่ต้องการมานาคือ แท่ม แท่ม แท๊มมม Subqueries นั่นเอง เงง เงง (พยายามอ่านให้เป็นเสียงเอคโค่)

เดิมแล้ว PHQL ของ Phalcon มีข้อจำกัดคือไม่สามารถทำ subquery ได้ เราก็ได้แต่หาทางออกกันด้วยวิธีอื่น จะ Join จะ Loop จะสร้าง View ก็แล้วแต่ลอจิกของแต่ละคน แต่พอมี subquery เพิ่มเข้ามา ก็ทำให้ชีวิตสบายขึ้นมาอีกระดับ

ตัวอย่าง Subqueries

$phql = "SELECT c.* FROM Shop\Cars c
WHERE c.brandId IN (SELECT id FROM Shop\Brands)  
ORDER BY c.name";  
$cars = $this->modelsManager->executeQuery($phql);

ฟีเจอร์อีกอันนึงที่ช่วยได้บ้างคือ Default Database Values เดิมทีเวลาเราสั่ง $model->save() โดยไม่ได้กำหนดค่าให้ attribute ของ model ค่าที่ได้ใน field จะเป็น NULL แต่ในรีลีสนี้ หากเราได้กำหนด default ไว้ใน schema ตอนสั่ง $model->save() เราจะได้ค่า default ที่กำหนดไว้แทน ไม่ต้องมานั่ง assign default ใน model อีกต่อไป