我是 ORM 新手,我真的很想学习它。我按照本教程成功地使用 Zend 1.11.x 安装了 Doctrine 2.1 的所有类和配置。
http://www.zendcasts.com/unit-testing-doctrine-2-entities/2011/02/ http://www.zendcasts.com/unit-testing-doctrine-2-entities/2011/02/它使用 Bisna 插件和学说脚本。
现在我的问题是他清楚地解释了如何通过学说类创建实体和表,但没有解释如何从现有数据库自动生成代理和存储库类,这有助于我选择、插入和更新。我总是使用 MySQL Workbench 创建数据库。
我也遵循了下面的教程
http://www.zend.com/en/webinar/Framework/70170000000bSrG-webinar-zf-v-1-doctrine-v-2-20101214.flv http://www.zend.com/en/webinar/Framework/70170000000bSrG-webinar-zf-v-1-doctrine-v-2-20101214.flv
我的数据库非常复杂,关系以各种可能的方式流动。如果我按照这些教程中解释的步骤进行操作,我将永远无法完成我的项目。任何人都可以解释一下如何在配置后开始使用 Doctrine。考虑到我已经有一个数据库并且我的模型文件夹是空的。我的文件夹结构如下。
C:/zf/library/Doctrine
C:/zf/library/Symfony
C:/zf/library/ZC -- (my model which should contain the proxies and repo of Doctrine. At the moment it contains nothing.)
C:/zf/library/Zend
C:/zf/scripts/doctrine.php
请帮我!
我昨天发了同样的帖子,但没有人回复我的帖子。如果您需要我提供更多信息,请告诉我。
谢谢你,
Karthik
根据 Doctrine,您应该首先自己创建实体,然后从这些实体创建数据库模式。
但因为您已经有一个数据库,所以您可能不想要这样。可以将数据库转换为 PHP、XML 或 Yaml 格式的 Doctrine2 实体。
您应该仔细查看 Doctrine 与 Bisna 胶水一起提供的命令行工具,因为在那里您可以生成很多东西。
要从数据库生成实体,请考虑以下命令:
php doctrine.php orm:convert-mapping --from-database php ../library/Application/Entity
您还可以定义实体必须扩展的命名空间和基类:--namespace=namespace 和 --extends=class。
Doctrine2 警告您将数据库转换为实体,因为并非所有内容都可以自动检测或支持。例如,Doctrine2 默认情况下不支持 ENUM 数据类型,因此转换数据库会引发错误。
在使用所有实体之前,最好检查它们,尤其是关联。希望对您有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)