Php Zend 1.11和条令2自动从现有数据库生成所需的一切
我是ORM新手,我非常渴望学习它。通过遵循本教程,我成功地用Zend 1.11.x安装了条令2.1的所有类和配置 它使用Bisna插件和条令脚本 现在我的问题是,他清楚地解释了如何通过条令类创建实体和表,但没有解释如何从现有数据库自动生成代理和repo类,这有助于我选择、插入和更新。我总是使用MySQL工作台创建数据库 我也遵循了下面的教程 我的数据库是如此复杂,各种可能的关系贯穿其中。如果我遵循这些教程中介绍的步骤,我将永远无法完成我的项目。请任何人解释一下配置后如何开始使用条令。考虑到我已经有一个数据库,我的模型文件夹是空的。我的文件夹结构如下Php Zend 1.11和条令2自动从现有数据库生成所需的一切,php,zend-framework,doctrine,doctrine-orm,Php,Zend Framework,Doctrine,Doctrine Orm,我是ORM新手,我非常渴望学习它。通过遵循本教程,我成功地用Zend 1.11.x安装了条令2.1的所有类和配置 它使用Bisna插件和条令脚本 现在我的问题是,他清楚地解释了如何通过条令类创建实体和表,但没有解释如何从现有数据库自动生成代理和repo类,这有助于我选择、插入和更新。我总是使用MySQL工作台创建数据库 我也遵循了下面的教程 我的数据库是如此复杂,各种可能的关系贯穿其中。如果我遵循这些教程中介绍的步骤,我将永远无法完成我的项目。请任何人解释一下配置后如何开始使用条令。考虑到我已
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如果我正确理解您的问题,您已经配置了实体,需要自动生成代理和存储库类 可以使用以下CLI命令从应用程序的根目录创建这两个命令:
php scripts/doctrine.php orm:generate-proxies
php scripts/doctrine.php orm:generate-repositories library/
如果您正在寻找一种自动生成实体类的方法,不幸的是,我认为目前还没有解决方案
该网站的一位支持代表表示,他们正在“开发”这一功能,而且“需求量很大”这里希望它能包含在ORM Designer 2.0中,因为编码/映射实体类通常会涉及大量重复性工作,这些工作可能是自动化的。如果以XML或YAML格式提供映射信息,则可以使用
ORM:generate entities
命令
看
对于开发,请在配置中将代理生成设置为自动,否则,请使用orm:generate proxies
命令
除非您需要自定义存储库,否则会在实体管理器中根据请求创建通用存储库。要指定自定义存储库,只需使用存储库类
实体映射属性
请参见示例根据原则,您应该首先自己创建实体,然后从这些实体创建数据库模式 但是因为你已经有了一个数据库,你可能不想这样。可以将数据库转换为PHP、XML或Yaml中的Doctrine2实体 你应该仔细看看Bisna glue提供的命令行工具,因为在那里你可以生成很多东西 <>从数据库中生成实体考虑以下命令:
php doctrine.php orm:convert-mapping --from-database php ../library/Application/Entity
您还可以定义名称空间和基类,实体必须使用这些名称空间和基类进行扩展:--namespace=namespace和--extends=class
Doctrine2警告您将数据库转换为实体,因为并非所有内容都可以自动检测或支持。例如,Doctrine2默认情况下不支持枚举数据类型,因此转换数据库将引发错误
在使用之前,最好检查所有实体,尤其是关联。希望对你有帮助