One of my biggest gripes with CakePHP is that there isn’t a built in way to easily define how models report back their “name” to views. There is a handy variable called $displayField, but currently (1.2 RC3) that only accepts a single field.
There are at least 20 PHP MVC frameworks and trying to break each one down into its component strengths and weaknesses would be foolish. Each one tries, on some level, to outdo the others through the combination of features catering to some niche audience. Having been a consumer of everything from Code Igniter to Zend Framework and beyond I can honestly say that no single PHP framework is the “best” or is even deserving of such a title.
I just read Jakob Nielsen’s “Top-10 Application Design Mistakes” and thought I’d post some notes on it here and encourage everyone to read it since it is a great summary/categorization of the common issues. Why am I qualified to comment on this list? Well, I’ve made a lot of these mistakes in my own work and had to figure out how to avoid them the hard way!
This tutorial will walk you though setting up a functioning Windows-Apache-PHP-MySQL + CakePHP installation on Windows XP. This tutorial should also work for Windows 2000 or Vista, but since I’m not testing in that environment you should know that this was written with Windows XP in mind.
An interesting topic about CakePHP migration support was raised in the CakePHP discussion group recently. Dardo Sordi wrote a compelling and comprehensive argument in favor of not using migrations in favor of CakePHP’s built in Schema tool. He provided an excellent overview of the tool and a suggested workflow for how he currently uses it in his work.