问题标签 [doctrine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2552 浏览

php - 如何允许 Doctrine 集合中的重复记录

我希望那里有一些教义用户。
这是我的关系的简化 YAML:

我希望一个集合能够保存同一项目的多个副本,但是当我使用生成的类来加载项目时,如下所示:

$items 不包含我的重复项。生成的 sql 似乎正确地返回了重复的行:

我知道我可以通过进行特定的 dql 查询来解决这个问题,但是有谁知道某处是否有简单的设置允许 Items 集合具有重复项?

0 投票
3 回答
1191 浏览

php - 如何将 ORM 添加到 PHP 遗留项目?

我们正在开发一个 PHP 项目,该项目已经开发了 2 年多,现在团队已准备好并愿意将开发切换到 ORM。因为它确实加快了开发速度,让您可以通过 Objects 来操作,而不是大多数时候考虑 SQL 代码和数据库表。

我们决定选择Doctrine ORM,因为它加载了 YAML 数据夹具——我们非常需要它来进行单元测试。

我主要担心的是,使用新的 ORM 框架会降低网站的性能。我们无法在当前数据库抽象层(使用pg_connect语法,不兼容PDO )之间建立共享连接。数据库连接机制不能切换到PDO-compatible,因为有很多SQL代码不兼容PDO_SQLITE语法。

因此,据我了解,如果我们开始使用它,它将使数据库连接数增加一倍。我不确定数据库服务器是否能够处理这个问题。

在这种情况下,您会建议我们做什么?

0 投票
2 回答
852 浏览

php - Symfony - 如何在我的学说迁移中插入行为?

是否可以在学说迁移中添加行为(例如 actAs Timestampable)以避免定义 created_at 和 updated_at 列?

提前致谢 !

0 投票
2 回答
1740 浏览

php - Doctrine Profiler 不捕获查询

我想我一定在这里遗漏了一些明显的东西。我一起设置了 Doctrine 和 Zend Framework。在 bootstrap.php 文件中,我有以下内容 - 基于使用分析器的 Doctrine 文档:

没有错误,最后的探查器输出仅打印:“总时间:0,查询计数:0”。

随着查询的执行,连接肯定是有效的——我有一个 SELECT 使用 Doctrine_Query::create() 获取一堆项目,它是执行方法。

0 投票
2 回答
986 浏览

php - 在教义中更新文本字段会产生异常

我有一个文本字段,其中包含例如以下文本:-

“一种传统的英式菜肴,包括约克郡布丁面糊中的香肠,通常与蔬菜和肉汁一起食用。”

此文本字段采用一种仅使用其 ID 更新项目记录的形式。如果我编辑部分文本字段并替换“和肉汁”。用“幽默”。这样文本字段现在包含

“一种传统的英式菜肴,包括约克郡布丁面糊中的香肠,通常与蔬菜和幽默一起食用。”

我得到以下异常: -

致命错误:C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Abstract.php:780 中未捕获的异常 'Doctrine_Query_Exception' 和消息 'Unknown component alias humous' 堆栈跟踪:C:\Projects\nitrous\lightweight \system\database\Doctrine\Query\Abstract.php(767): Doctrine_Query_Abstract->getQueryComponent('humous') C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Set.php(58): Doctrine_Query_Abstract ->getAliasDeclaration('humous') C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Abstract.php(2092): Doctrine_Query_Set->parse('i.details = 'A ...') C :\Projects\nitrous\lightweight\system\database\Doctrine\Query.php(1058): Doctrine_Query_Abstract->_processDqlQueryPart('set', Array) C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Abstract.php(971): Doctrine_Query->getSqlQuery(Array) C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Abstract.php( 1030): Doctrine_Query_Abstract->_execute(Array) C:\Projects\nitrous\lightweight\system\appl 在 C:\Projects\nitrous\lightweight\system\database\Doctrine\Query\Abstract.php 在第 780 行

如果有人感兴趣,我正在使用与 CodeIgniter 1.7.0 挂钩的 Doctrine 1.0.6。

我实际执行更新的学说查询如下所示:-

这看起来很奇怪,因为如果我替换整个字符串“约克郡布丁面糊中的传统英式菜肴,通常与蔬菜和幽默一起食用。” 对于完全不同的东西,比如“测试”,它不会抛出异常并且工作得很好。这让我感到困惑......它是 Doctrine 中的错误还是我错过了什么?

0 投票
2 回答
1665 浏览

php - 为什么我在 Symfony 1.2 上使用 Doctrine 保存“验证器失败”?

假设我的 YAML 方案看起来像这样:

执行时:

我收到以下错误:

MySQL 将 order_id 存储为 bigint(20)。

我正在使用 Ubuntu 9.10、Symfony 1.2、PHP 5 和 MySQL 5。

编辑 :

得到提示,如果我在 YAML 文件中删除所有提到的大小,我会收到 order_id (lenght) 的第二个验证器错误:-)

0 投票
1 回答
208 浏览

php - 固定装置可以从其他固定装置“复制”项目吗?

在我的 ACL 装置中,我有资源和动作,大多数资源共享共同的动作,如 CRUD,在 Doctrine (yaml) 中有没有办法扩展另一个元素?

这是我当前的 yaml 的简介:


我如何使用新资源扩展 R1,例如,称为“新闻文章”,它将继承 A1 到 A4 + 包括它自己的操作?

0 投票
1 回答
1508 浏览

doctrine - Doctrine 生成的模型可以有前缀吗?

教义中是否有一个选项可以为教义生成的任何类指定前缀?

我在使用新的 Zend 自动加载器和自动加载模型时遇到问题,教义自动加载器也无济于事。

理想情况下,我会让教义生成的类以“Model_”为前缀,如“Model_User”中。

我在尝试使用 generate-migrations-diff 生成迁移时遇到了这个问题,它说 Fatal error: Cannot redeclare class BaseUser in /tmp/fromprfx_doctrine_tmp_dirs/generated/BaseUser.php on line 38

因为实际模型是在新生成的类之前加载的。

0 投票
2 回答
5635 浏览

php - 为什么在 Symfony 1.2 中重写 Doctrine_Record::save() 会给我一个严格的标准错误?

我有以下模型:

我觉得我正在遵循Doctrine_Record::save()签名的 API 描述(除了奇怪的括号,我会给我一个语法错误......)。

当我运行此代码时,它运行良好 ,但我收到以下警告:

我通常将错误报告转为 ERROR_ALL,并尝试坚持使用无警告代码。这让我很困扰。我检查了所有的 Doctrine 源代码并用 greped “保存(”,在它上面,一个接一个地尝试一个签名。什么都没有。PHP 第一次让我太宽容了,奇怪 hu :-) ?

0 投票
3 回答
4120 浏览

php - 将 Doctrine 与 Zend Framework 1.8 应用程序集成

我有兴趣将 Doctrine 用作我正在编写的新 Zend Framework 应用程序的 ORM。我试图找出尽可能简单地集成它的最佳方法。我发现的每个示例都不同,其中很多都早于 ZF 1.8 中新的自动加载功能。他们都没有为我工作过。

有没有人有这样做的好方法?我倾向于将它放在我的引导文件中,但有些人建议制作一个 Zend_Application_Resource 插件。困难的部分似乎是让 Doctrine 命名空间和默认情况下不遵循 Zend 自动加载约定的模型类的加载路径正常工作。

有什么想法吗?谢谢。