将symfony 1.4从Doctrine切换到Propel

Ste*_*hka 6 propel doctrine symfony1

如何正确地将新安装的Symfony 1.4框架从Doctrine(默认情况下配置为)转换为Propel?

Tom*_*ski 8

如果你创建新的(新的)项目......

symfony generate:project xxx --orm=Propel
Run Code Online (Sandbox Code Playgroud)

最容易的事:)

如果要更改现有项目 - 您必须深入了解配置文件并启用推进插件.

您的配置文件应类似于:

// config/ProjectConfiguration.class.php
public function setup()
{
  $this->enablePlugins('sfPropelPlugin');
  ...
}
Run Code Online (Sandbox Code Playgroud)

(根据Symfony页面,你应该在下次挖掘它 - 尤其是Practical Symfony)

  • 和Priidik:至少请给出一些论点,链接等,准确地说明为什么Doctrine比Propel更好(但是经过一年多的时间,争论肯定已经改变了......). (3认同)
  • 顺便说一句,如果你正在开始新项目,我强烈推荐Doctrine.这样更好. (2认同)

小智 5

如果您喜欢面向对象的语法,请使用Propel.


Bri*_*ian 5

如果您喜欢看起来像SQL语句的链式对象方法调用,请使用Doctrine.如果您喜欢隐藏SQL的真实对象,请使用Propel.

如果您想创建条件对象,然后将其自身呈现为WHERE子句,请使用Propel.如果您想创建类似于SQL的WHERE子句,请使用Doctrine.

你也可以同时使用它们.不推荐,但如果你使用像撇号那样只使用Doctrine的插件,你可能没有选择.