2011-05-16 84 views
1

我知道有很多例子,但这是我的问题,因为现在我不知道哪个是最好的,我不明白每个样本。在我使用doctrine 1.x之前,这对我来说更简单,因为只有几个步骤可以连接到数据库并使用它:Zend-Framework 1.x与Doctrine 2.x

1.)将User.yml文件创建到application/doctrine/schema夹
2.)执行命令产生的模型 - 在YAML CLI其中产生PHP类成
应用/模型/生成的文件夹 3.)同样,在CLI运行:创建-DB,创建桌
4.)在索引控制器/ IndexAction我可以使用它:

$newUser = new User(); 
$newUser->name = 'Demo'; 
$newUser->save; 

而就是这样。但与2.0我有一些问题:
- 哪里是映射yaml文件的最佳场所?
- 如何从yaml生成实体? (根据第一个答案)
- 如何创建/删除数据库和表?
- 哪个解决方案是最好的EntitiyManager?

所以我只想要像我的教条1.x样本最简单的样本。谢谢!

+1

这是一个非常广泛的问题。 Doctrine2与Doctrine1有着根本的区别。我建议你忘记关于d1的所有内容,并阅读/遵循一些doctrine2教程。忘记yml文件,并使用注释。一旦掌握了D2,注释,EntityManager和d2命令行工具,就可以查看各种D2/ZF1集成。根据d1的情况,你不会假设任何有关d2的事情是非常重要的 - 它们是完全不同的动物。 – timdev 2011-05-16 18:31:30

+0

我知道有一个很大的差异,但这两个数据库管理器,所以我认为D2需要知道默认的数据库功能。或者我需要从命令行创建一个数据库?在cli中我可以使用orm:generate-entities(来自映射文件),但我没有找到映射的地方。之后,我可以从cli创建表格吗?所以我的问题,我不知道如何建立我的数据库doctrine2 – Robertoq 2011-05-17 06:49:51

回答

2

对我来说最佳整合Bisna从吉尔赫尔梅兰科https://github.com/guilhermeblanco/ZendFramework1-Doctrine2

通过使用Bisna积分步骤视频教程步骤 http://www.zendcasts.com/unit-testing-doctrine-2-entities/2011/02/

+2

请注意,在视频中讨论的代码是为Doctrine 2.0。教义2.1和2.2与该版本的Bisna不再兼容。最好选择最新的Bisna版本,并查看另一个骨架应用程序是如何实现的。例如:https://github.com/keesschepers/SolrExample与Doctrine 2.2和Bisna集成。 – 2012-02-01 13:13:52

相关问题