草庐IT

Doctrine_Record

全部标签

php - 根据当前配置没有映射的 Doctrine ORM 实体

我有一个可疑的问题。我有一组已在Symfony2/Doctrine2项目中成功使用的现有注释Doctrine实体。但是,我目前正在将这个项目的一些核心功能隔离到它自己的Web框架独立库中,我似乎无法让实体正常运行。目前我主要担心的是DoctrineCLI实用程序给我的结果喜忧参半。当我执行以下操作时:bin/doctrineorm:validate-schema我得到以下输出:[Mapping]OK-Themappingfilesarecorrect.[Database]OK-Thedatabaseschemaisinsyncwiththemappingfiles.但是当我这样做的时候

php - Codeigniter Active Record - 计算总发现行数 (MySQL)

我在应用了限制的Codeigniter模型中使用复杂的SQL查询。我想计算在未应用限制和偏移量的情况下会找到的总行数。我想将计数连同结果数组一起返回到我的Controller-我该怎么做?如果这是正确的解决方案,我应该把SQL_CALC_FOUND_ROWS放在哪里?这是查询(最初不是我自己构建的):$this->db->select('table1.*,table2.*,table3.*,table4.*,table5.*,table6.*,table7.*,table8.*,table9.*,(SELECTGROUP_CONCAT(field1)FROMtable10WHEREta

php - 移动 "root"或父节点 - Doctrine NestedSet 扩展

我正在尝试从gedmonested-set复制示例分机blog,这里有很多父节点。在那里您可以创建尽可能多的可移动父节点和子节点(这对于nestedset­Wikipedia是典型的)。通过评论部分阅读,常见的建议是删除@Gedmo\TreeRoot注释/映射,但如果我这样做,我可以移动根节点,但树会变得splinter,特别是左右身份证。如果我保留TreeRoot,并尝试移动根节点,我会得到“没有节点sibling”或类似预期的结果。查看扩展博客中的实例,您可以看到您可以创建没有父级的类别并将其向上或向下移动。我的类别实体-相关部分:classCategory{/***@Gedmo\

php - Doctrine2 静静地无法插入数据

我正在使用Doctrine,它在我第一次执行persist/flush时无法INSERT数据,但第二次可以,并且第三次失败://thereisnocodeexecutedbetweenanyoftheattempts$entity=newMy\Entity();$entity->setTag('A');//justarandomfield$em->persist($entity);$em->flush();//INSERTnotperformed//ifIexithereandcheckthedatabase,noentryisadded$entity=newMy\Entity();$

php - Symfony2 : Doctrine MySql Math Functions

我尝试按年龄段统计人数。AGEBRACKET|NBR10|320|1430|12340|450|55...这是我的代码:$qb=$em->createQueryBuilder();$qb->select('FLOOR((YEAR(CURDATE())-YEAR(p.date_birth))/10)*10ASage,COUNT(p.id)');$qb->from('MyBundle:Person','p');$qb->groupBy('age');$countByAge=$qb->getQuery()->execute();我收到这个错误:[SyntaxError]line0,col7:

mysql - 如何使用 Doctrine 2 中的 QueryBuilder 使用 SELECT 子查询创建 LEFT JOIN?

我需要限制LEFTJOIN结果,所以我必须使用子查询。有人可以给我建议我如何使用Doctrine2做到这一点吗?我现在拥有的是:$qb=$this->_em->createQueryBuilder();return$qb->add('select','c,j')->add('from','JobeetBundle:Categoryc')->leftJoin('c.jobs','j','WITH','j.category=c')->add('where','j.expiresAt>?1')->add('orderBy','j.expiresAtDESC')->setParameter(1

php - 在 Symfony2 (Doctrine) 和 MySQL 中启用微秒

我有一个包含一列“日期时间”类型的实体来存储时间戳。/***@ORM\Column(type="datetime")*/protected$timestamp;我有MySQL5.5.40,我发现它不存储微秒。所以我切换到5.6.21并导入了我所有的表和数据。我试图将类型声明为*@ORM\Column(type="datetime(6)")但它给了我一个错误。所以我直接在数据库中更改了它:ALTERTABLEsymfony.hrmgmtMODIFYtimestampDATETIME(6);在我的Controller中我这样做:$dt=new\DateTime('now');$newHRE

php - 在 Symfony 中使用 Doctrine 的 DBAL 检索 bool 值

我在Symfony项目中使用DBAL来访问Mysql数据库中的数据。当查询带有bool字段(创建为tinyint)的表时,我在PHP中得到了tinyint值,但我想得到bool值。不知何故,我想获得与直接使用Doctrine相同的映射。我认为映射转换(从mysql到php)已经在DBAL中实现,但我不确定它是否应该以这种方式工作(该层映射值返回)。我试过像下面这样注册自定义映射,但没有成功:$this->conn->getDatabasePlatform()->registerDoctrineTypeMapping('tinyint','boolean');$sql="SELECTse

php - Yii2 更新与 Active Record 多对多关系的联结表

我有3个表,例如数据库中的一个article表,一个tag表,一个article_tag表。文章和标签是N-M关系。当我需要添加新文章时,使用Yii2的事件记录的link()方法将关系保存到联结表,它工作正常。但是当我需要更新联结表时。如果我再次调用文章的link()方法。不起作用。下面是我的代码和错误信息。$tag_ids=Yii::$app->request->post('Article')['tags'];foreach($tag_idsas$value){$tag=Tag::findOne($value);$model->link('tags',$tag);}SQLSTATE[

PHP:在项目中安装 Doctrine

我目前正在尝试在自定义(自己的)项目中运行Doctrine,该项目不基于任何流行的框架。我已经能够为我当前的bootstrap.php执行以下操作;register();//registeronSPLautoloadstack但是我有一种强烈的感觉,这还远远不够,我找不到任何文档来明确说明我下一步应该做什么。运行$conn=Doctrine_Manager::connection('mysql://root:root@192.168.1.4/myTable','doctrine');将使我的PHP文件开始抛出错误(fatalerror:未找到“Doc​​trine_Manager”类)