CakePHP与Ruby on Rails有何不同?

18 php comparison cakephp ruby-on-rails

不久之后,我几乎从未听过CakePHP这个词而没有听到Rails这个词.这两个框架是否主要基于它们如何遵循MVC模型,或者它们是否具有其他重要的相似性/差异?

对我来说,Rails的主要吸引力之一就是使用Ajax是多么容易.CakePHP也是如此吗?

Jim*_*uls 39

CakePHP就像一个廉价的,混乱的Rails ripoff.它试图像Rails一样没有做任何让Rails变得更棒的东西.我觉得它有点类似.

CakePHP有一个Ajax帮助器,它在Rails中执行类似于与Ajax相关的辅助方法,所以是的,在某种程度上,它也是如此.

但是CakePHP实际上是徒劳无功的:它的作者编写了它,所以他们不必学习Ruby,即使一起学习Ruby和Rails可能比找出像CakePHP这样可怕的混乱更容易.

(这是来自在日常工作中做CakePHP的人.)


因为你们都问过,我对CakePHP的最大抱怨是它如何设法完全控制面向对象编程的便利性:当然,它实现了与Rails一样多的Active Record模式,但它让你传递数据结构.

我觉得任何有逻辑的人都会使用错误和动态加载属性来实现ORM,这正是ActiveRecord(Rails库)所做的.设置成员变量的整个想法是$recursive为了确定要加载哪些关系,这只是一个明显的缺陷.

以PHP为基础也非常致命; 你不能做任何与全球状态有关的事情,你必须依赖mod_rewrite,你在每次请求时支付启动惩罚.当然,对于您正在使用的任何环境都有优化,但仍然存在.人们说Ruby很慢,但是我自己的Rails应用程序运行速度比CakePHP等价物快,最后我查了一下.我承认没有这方面的数据.

最糟糕的是,CakePHP中的错误只是为了我而杀了它.我可以讲任何数量的故事

  • 我们花了两天时间弄清楚为什么CakePHP拒绝连接到正确的数据库主机
  • 由于使用太多组件导致内存上限,我们页面的一半时间变得空白
  • 我们的AppController中存在的代码量,因为每个组件加载花费几兆字节的内存
  • 按摩数据结构的黑色艺术,使XML输出正常工作
  • 我们如何追踪<javascript>每页末尾显示的空白标签

  • 嗨吉姆,我还是习惯了CakePHP,但我很喜欢它.我认为一些(大多数?)这些疑虑已经在蛋糕2.0,甚至2.1中得到了解决.我只是想知道你们是否已升级,如果你有任何经验2.0等等我想知道你是否仍然厌恶它.:} (3认同)
  • 我不能说它是如何回到2009年,但现在在2015年我看不到任何这些问题...... (3认同)
  • 仅仅是一个注意事项,它根本不依赖于`mod_rewrite`.关闭它(因为我现在,因为我正在为IIS开发),你的URL看起来像这样:`example.com/myapp/index.php/users/view/1`而不是`example/myapp/users/view/1` ..没有大问题IMO. (2认同)