小编Joh*_*ohn的帖子

Doctrine 2查询构建器和索引

是否可以在doctrine 2查询构建器中使用index by,如果是,那么正确的语法是什么?

doctrine-orm

15
推荐指数
3
解决办法
2万
查看次数

学说2价值对象

我一直在Doctrine 2中将值对象实现为自定义DBAL类型,并且它一直正常工作.但是我一直想知道这是不是最好的方法.我已经考虑过使用Post Load监听器来实例化Value Objects.同时在请求时通过Entity访问器实例化它们,后者的优点是我不会实例化比我需要的更多的对象.

我的问题是:哪种方法最好?或者有更好的方法吗?以上是否有任何陷阱或不合理的表现?

doctrine doctrine-orm

8
推荐指数
1
解决办法
1959
查看次数

具有用户定义id的ExtJs4模型

我有以下型号:

Ext.define('Gst.model.Order', {
    extend: 'Ext.data.Model',
    idProperty: 'id',
    fields: [
        { name: 'id', type: 'string' } 
    ]
});     
Run Code Online (Sandbox Code Playgroud)

我的问题是订单模型的ID是用户定义的.因此,创建新订单实例并将其插入订单商店的代码将是:

order = Ext.create('Gst.model.Order', {'id': 'someuserdefinedvalue'}); 
store.insert(0, order);
Run Code Online (Sandbox Code Playgroud)

发生的情况是因为idProperty由用户提供,然后订单没有标记为幻像,因此不被视为脏.因此,没有向服务器发出POST.如果我手动将订单设置为幻像和脏,那么当我将订单插入商店时,我可以触发POST,如:

order = Ext.create('Gst.model.Order', {'id': 'someuserdefinedID'});
order.phantom = true;
order.setDirty(); 
store.insert(0, order);
Run Code Online (Sandbox Code Playgroud)

这样会很好,但是我的服务器端代码使用REST控制器并且期望​​POST不具有和在URL中的id.因此,虽然请求extJS问题是

POST http://app.local/api/order/someuserdefinedID.json
Run Code Online (Sandbox Code Playgroud)

虽然我的服务器寻找的格式是

POST http://app.local/api/order.json
Run Code Online (Sandbox Code Playgroud)

因此,解决这个问题的唯一方法就是创建一个订单并设置phantom = true并调用setDirty().这将导致发出POST,然后在我的RestProxy中覆盖buildUrl:使用逻辑来测试POST请求并从url中删除idProperty.

这对我来说似乎是一个丑陋的工作,并想知道是否有更好的方法?

我想我的问题是:处理这样的事情的最佳方法是什么?

extjs extjs4 extjs4.1

7
推荐指数
1
解决办法
4300
查看次数

标签 统计

doctrine-orm ×2

doctrine ×1

extjs ×1

extjs4 ×1

extjs4.1 ×1