草庐IT

doctrine

全部标签

php - 无法使用 Doctrine 创建 postgres 数据库

我在Symfony2中有一个带有Doctrine的项目。有那么一刻,我失去了通过控制台命令创建/删除数据库的能力,例如app/consoledoctrine:database:drop--forceapp/consoledoctrine:database:createapp/consoledoctrine:schema:update--force如果我尝试创建数据库,Doctrine会给我下一个错误:[Doctrine\DBAL\Exception\ConnectionException]Anexceptionoccuredindriver:SQLSTATE[08006][7]FATA

php - Doctrine Join Many To Many without association

我有:两个具有单向M:M关联的实体。classShareInfo{//.../***@ORM\ManyToMany(targetEntity="Item")*@ORM\JoinTable(name="share_info_items",*joinColumns={@ORM\JoinColumn(name="share_id",referencedColumnName="id")},*inverseJoinColumns={@ORM\JoinColumn(name="item_id",referencedColumnName="id")})**@varItem[]*/private$it

php - Doctrine 记录的深拷贝

我想对symfony项目中的条令记录进行深度复制/克隆。现有的copy($deep)方法不能与$deep=true一起正常工作。举个例子,让我们看一下类类(class)。本课有开始日期和结束日期,中间有几次休息时间。这间教室在一座大楼里。lesson-break是一对多的关系,所以很多课间休息都可以在一节课中。建课是多对一的关系,所以一个类只能在一栋楼里。如果我想复制房间,也应该复制休息时间。建筑物应该保持不变(此处没有副本)。我在网上找到了一些示例,这些示例创建了一个从sfDoctrineRecord扩展并覆盖复制方法的PHP类。我尝试的是:classBaseDoctrineReco

php - Symfony Doctrine fetch EAGER 和 orderBy 组合不起作用

我有一个页面树。我想获取页面的所有子页面。对于这种情况,我将fetch:Eager添加到我的yaml文件中。我还想按位置排序子页面。但是fetch似乎毁了一切。它确实降低了总执行查询量,但子页面不再按位置排序。这部分在我的Page实体的yaml文件中:oneToMany:pages:targetEntity:PagemappedBy:parentPagefetch:EAGERorderBy:{position:ASC}知道如何获取一个页面的所有页面,但仍按位置排序吗?页面树可以嵌套超过1级。-page_1page_1_1page_1_2page_1_2_1page_1_2_2-page

php - 如何使用 Doctrine Criteria 过滤掉数组属性?

我正在Symfony实体类中添加一个虚拟属性。此属性应根据另一个表数据进行计算-特别是在Doctrine数组类型的列上。classRelatedEntity{/*...*//***@ORM\Column(type="array")*/protected$type;重点是我想为此使用DoctrineCriteria,因为它应该在SQL级别上进行优化。所以我这样做了:publicfunctiongetCreated(){$criteria=Criteria::create()->where(Criteria::expr()->contains('type','create'));$rela

PHPUnit 测试和 Doctrine,连接太多

对于ZF3和Doctrine的PHPUnit测试,我面临着“太多连接”的问题,因为我在每次PHPUnit执行时执行约200个测试。我已经找到了一些关于堆栈溢出的问题和答案,但这些都不起作用。我的设置:ZF2/ZF3、Doctrine2和PHPUnit。我有一个用于所有测试的基本测试类,setUp和tearDown函数如下所示:publicfunctionsetUp(){$this->setApplicationConfig(Bootstrap::getConfig());Bootstrap::loadAllFixtures();if(!static::$em){echo"initem"

PHP Doctrine 继承

我正在通读Doctrine文档,但找不到实现我想要使用的继承类型的方法。我想建立这样的层次结构:Node->Something->SomethingElse以Node为主。我想在节点表中存储对所有内容都通用的数据,例如创建日期、更新日期等,而不是在每个表中存储相同的信息。然后,子类将根据其用途具有不同的属性。Doctrine的simple和column_aggregation方法似乎不能为子类创建新表,而具体方法创建一个新表但复制父类的所有属性。有什么办法可以实现吗?感谢任何建议。谢谢。 最佳答案 Doctrine2.x支持clas

php - 使用表单数据填充 Doctrine 2 模型的简单方法?

想象一个像这样的User模型:classUser{/***...somemappinginfo...*/private$username;/***...somemappinginfo...*/private$password;publicfunctionsetUsername($username){$this->username=$username;}publicfunctionsetPassword($password){$this->password=$password;}}提交新用户的示例表单:Username:Password:目前在我的Controller中,我保存了一个新的

php - 服务层的数据访问和安全(Doctrine & ZF)

我们最近开始使用Doctrine2.2和ZendFramework2的一部分,以努力改进组织、减少重复等。今天,我开始提出实现服务层的想法,以充当我们的Controller和Doctrine实体之间的中介。现在,我们的大部分逻辑都驻留在Controller中。此外,我们使用Action助手来测试某些权限;然而,在实现Zend\Di之后,我想到了一种新方法。我开始创建特定于实体的服务模型,它使用Zend\Di注入(inject)EntityManager实例和当前用户的权限。Controller代码如下:classProject_DeleteControllerextendsWebjaw

php - 在 Doctrine (symfony2) 中对可翻译实体进行版本控制

集成某些使用gedmo可翻译行为的实体的版本控制系统的最佳方式是什么?GedmoLoggable似乎不是这样工作的:/***@ORM\Entity(repositoryClass="Alef\JobOffersBundle\Repository\JobOfferRepository")*@ORM\Table(name="alef_job_offer")*@Gedmo\Loggable*/classJobOfferimplementsLoggable,Translatable,UserOwnerInterface{/***@ORM\Id*@ORM\Column(type="integer