After looking at an interesting Google group topic
Poll: what do you hate about CakePHP? i have tried to sum up the facts which people reasoned for hating/disliking CakePHP. Please be noted that all the facts listed here are based on users postings in the very topic and I have not tried to reproduce/test them all in a working environment. So, please take them home with your own consent. At least have a look at this topic and follow other links / facts behind the reason for such posting of users.
Here are the so called shortcomings of CakePHP:
- Poor PHP 4 support
- No namespaces
- No built-in Uploader( and image ) component
- Use of inflections/conventions in other languages (pt_BR).
- No HABTM counterCache
- Ignoring callbacks on associative queries
- The Ajax helper being tied into prototype/scriptalicious - for someone with a preference for jQuery.
- Lack of good userguides and tutorials. The ones that exist cover a few basics but thats about it, one struggles with more advanced stuff.
- Lack of a good, proper support forum.
- Inconsistency on model joining in queries
- Lack of bootstrap file for plugins would be another one (possibly even core.php and routes).
- MediaView still depends on the array of predefined MIME types (WTF?)
- Defining custom find types is unintuitive. It should be as simple as defining a function called _findCabbage() in your model to be able to use find(’cabbage’).
- Habtm implementation:
Model::_deleteLinks($id). “Cascades model deletes through HABTM join keys.” I just found out reason why some records gets randomly deleted from habtm: cake ignores condition’ filed in habtm assocciation definition.
- saveall not recursive besides first level
- too complex ACL mangement
- broken IniAcl ( https://trac.cakephp.org/ticket/6103 )
- more configurability - eg. configure which controller subfolder a
particular controller/model is located in (currently has to search
through all folders in $controllerPaths bootstrap variable, takes
unnecessary time)
- js, css minification/compression, packing, gzipping
- debugKit in core (or similiar)
- gzip
And many more..
At last but not least, i would quote one of the user saying on this very post:
I hate that it is a powerful framework that can make the tedious work of developing sites a breeze. Its strict adherence to the tried and true MVC model is a pain point as well. Why so logical?
I hate the active community involvement and powerful documentation and API sites. I hate that people expect Cake to do every little thing.
It is a framework! Not a solve everything-all-in-one-cms-portal-file-
manager-blog-forum.
Use the framework to create an upload component, it takes all of 5
minutes!!
I hope you enjoy this and that post!