doctrine

    4热度

    5回答

    我正在研究使用Doctrine2与我的Zend框架设置。我非常喜欢datamapper模式,主要是因为它用我的数据库分离了我的域模型。 我的问题是在我的控制器中使用Doctrine和DQL的最佳做法是什么? 控制器使用原则 DQL/EntityManager的直接 保存/载入我的域模型? 创建于 DataMapper的模式我自己的类 保存/载入我的域模型,并 然后在 我自己的类使用Doctrine

    1热度

    3回答

    我有我的Symfony定义的许多一对多的关系(使用原则)项目Orders和Upgrades(一Order可以用零个或多个Upgrades相关联,并且Upgrade可以适用于零个或多个Orders)之间。 # schema.yml Order: columns: order_id: {...} relations: Upgrades: clas

    1热度

    2回答

    (如果需要,可以创建此CW) 我们是两个开发基于Web应用程序(PHP5,ZF,Doctrine,MySQL5)的开发人员。我们每个人都有一个本地网络服务器和一个本地数据库。数据库模式在YAML文件中定义。 保持我们的数据库模式同步的最佳方式是什么? 以下是我们的工作方式:无论何时开发人员“A”进行更改,他都会生成一个迁移课程。然后他提交迁移文件开发者“B”执行迁移类。 但是在每个数据库更改上创建

    2热度

    2回答

    使用PHP学说 如果我有一个许多人与模型地址许多关系的用户和每个地址都有一个外键的地址类型(家庭,办公室)。 Doctrine不会自动加载该地址类型的相关记录。 $user = Doctrine::getTable('User')->findOneById(1); // bob echo $user->Address[0]->address_type_id; // 4 echo isset($

    4热度

    5回答

    我有一个选择查询我想和原则执行: $resultset = Doctrine_Query::create() ->select("t.code, t.description, case when t.id_outcome = 1 then 1 else 0 end as in_progress") ->from('LuOutcome t') ->orderBy('t.

    5热度

    2回答

    我的监听器是行为的一部分,应该删除任何被调用的select查询的where子句中的所有is_published检查。将一个部分添加到子句中非常简单,但是如何删除它。 有一些功能,如Doctrine_Query->removeDqlQueryPart('where'), 但删除完整的where子句,而我只需要'is_published = ?'部分被删除。 但我可以用某种方式手动处理这个,用正则表达

    3热度

    1回答

    使用Doctrine ORM,是否可以在getter中使用时自动加载相关记录? (没有明确leftJoins()) 我知道我可以使用一个leftJoin()获取对象有相关的记录, 但我想避免创建为每个对象一个DQL查询,只需 某种自动“预取“相关记录。 时通过嵌套Doctrine_Records 有周期,这非常有用,它的正是Kohana的ORM具有通过与()语句相同的功能: http://docs

    0热度

    1回答

    我正在寻找一种在Doctrine 1.0中使用MySQL timestamp列类型的方法。我可以通过修改Doctrine_DataDict_Mysql来返回TIMESTAMP而不是DATETIME,但指定的类型是timestamp,但我相当肯定它不是正确的方法,它可能会在某些时候中断。 Doctrine 2.0似乎有一个内置的类型映射工具,但我无法在1.0中找到一个等价的机制,而且我现在仍然坚持使

    0热度

    2回答

    我在想,如果你可以指定表定义和数据灯具使用CLI加载顺序。我的问题是我有两个表,每个表都有一个指向另一个的外键约束,所以在添加记录后需要添加一个约束。或者也许有更好的方式做到这一点......我不是数据库专家,今天我的头脑很模糊。 模式: CREATE TABLE clients ( id INT AUTO_INCREMENT, name VARCHAR(255), addres

    0热度

    3回答

    在PHP Doctrine中,是否可以创建一个迁移类来创建表并在该表上创建一个外键? 出于某种原因,我不能让外键工作... class Migration_001 extends Doctrine_Migration_Base { public function up() { $this->createTable('table_name', array(...))