如何在symfony 1.1中使用Propel 1.3ob娱乐下载 ?
从ob娱乐下载symfony 1.1,现在可以很容易地使用推动1.3在你的项目中利用它的速度提升,嵌套集实现,对象实例池等。最重要的是,Propel 1.3使用PDO而不是Creole作为DBAL,提供了显著的性能提升。
多亏了达斯汀·惠特尔,安装Propel 1.3只需要几分钟。你所要做的就是安装一个插件并修改两个配置文件。继续往下读,学习如何做到。
从symfony存储库安装Propel 1.3插件:ob娱乐下载
$ cd /path/to/project/root/ $ svn co http://svn.ob娱乐下载symfony-project.com/plugins/sfPropelPlugin/branches/1.3/ plugins/sfPropelPlugin
Propel 1.3使用了新的连接格式,所以你必须更新
databases.yml
相应的行动。改变配置/ databases.yml
为了匹配下面的内容,请自己进行必要的更改。dev: propel: param: classname: DebugPDO all: propel: class: sfPropelDatabase param: dsn: mysql:dbname=mydb;host=localhost username:用户名password:密码encoding: utf8 persistent: true pooling: false classname: PropelPDO
要升级DSN,请参见PDO手册.
我们必须更新
propel.ini
以匹配相同的配置。看开头的三行配置/ propel.ini
并删除它们:推动。database = mysql propel.database.createUrl = mysql://root@localhost/ propel.database.url = mysql://root@localhost/myproject
在其位置插入以下内容:
推动。database = mysql propel.database.driver = mysql propel.database.createUrl = mysql://localhost/ propel.database.url = mysql:dbname=mydb;host=localhost propel.database.user =用户名propel.database.password =密码propel.database.encoding = utf8
一定要
propel.databse.url
匹配步骤2中的DSN。清除symfob娱乐下载ony的内部缓存:
$ ob娱乐下载symfony cache:clear
Propel 1.3有一个改进的对象模型,所以我们必须重新构建模型:
$ ob娱乐下载symfony驱动:构建模型
如果这是一个新项目,恭喜你已经安装了Propel 1.3!的schema.yml
语法与Propel 1.2完全相同。新的API并没有根本的不同;事实上,在大多数情况下,API是完全相同的。
如果您正在升级一个项目,您可能还有一些工作要做,但是您应该会发现您的项目的大部分都可以工作。如果在代码中直接使用事务或Creole,则必须手动升级到PDO。Propel项目有一个有用的升级指南指导您完成升级过程。即使这是一个新项目,您也会发现浏览一下以了解所有新功能是有帮助的。
ob娱乐下载symfony 1.1对其核心系统进行了解耦,因此使用任何ORM层都不可能更容易。如果Propel不适合你,那就试试sfDoctrinePlugin,它是Propel 1.3的替代方案,性能与Propel 1.3相当。由于symfony ob娱乐下载1.1,开发人员可以使用Propel 1.3来提高性能,如果他们需要坚固的稳定性,则可以使用Propel 1.2。
评论
评论截止。
为了确保评论保持相关性,旧帖子将被关闭。
我很高兴听到symfony 1.1将Propelob娱乐下载作为插件安装,而不是像symfony 1.0.X那样构建。
致命错误:未定义类常量'MSG_VERBOSE'在D:\Websites\projects\ hetlijstjeevan \plugins\sfPropelPlugin\lib\vendor\ propulsion -generator\classes\propel\phing\AbstractPropelDataModelTask.php第433行
为什么会这样?在这个问题解决后,我希望这能提高我的应用程序。这听起来很有前途!
@Akinas: Propel 1.2是与symfony 1.1捆绑在一ob娱乐下载起的,默认包含在其中。如果你想使用Propel 1.3,你应该按照这些说明在你的项目中安装Dustin的插件。
通过PEAR手动安装Phing 2.3可以清除错误。
参见http://phing.info/trac/wiki/Users/Download
道防线
尝试按照烹饪书中关于使用symfony 1.1使用propel 1.3的说明,但我在尝试运行第4步(清除缓存)时遇到了这个错误:ob娱乐下载
无法在D:\xampp\htdocs\test.1.1中重新声明类sfPropelBaseTask
第265行\plugins\sfPropel13Plugin\lib\task\sfPropelBaseTask.class.php
有什么解决办法吗?我真的很想在我的下一个项目中使用它(因为我仍然在sf 1.0中。X with sfPropel13Plugin by now)