有业务需求如下: select * from table where id IN (3,6,9,1,2,5,8,7) order by field(id,3,6,9,1,2,5,8,7); 这里直入主题,用TP的order方法写的话,可能不太好写,但是也可以写成这样 ->order("field(id,3,6,9,1,2,5,8,7)") 但是官方文档说了,当你的order排序中使用了SQL函数的时候,请使用orderRaw方法替代order 所以并不太好实现. 所以查阅资料找到
为了说明问题,假设现在有表test1,test1有从表test2:test1属于test3,test1和test4多对多,关联表test1_test4. 1.定义关系 class Test1Model extends WdModel { public function test2(){ return $this->hasOne('Test2','test1_id'); } public function test3(){ return $this->hasMany('Test3','test1
这段时间对模型做了升级和优化,并将版本更新到TP3.2. 下载 下载后请将目录放置TP的Library目录下 1.数据节点优化,原来的节点为模型的名称或者表名,现在更新为定义关系的方法名 public function test2(){ return $this->hasOne('Test2','test1_id'); } public function test3(){ return $this->hasMany('Test3','test1_id'); } 如这里:原来返回数组的关系节点的
并不是很想写这个系列,因为这个2pc单独写一个小架构有点鸡肋.不过也不知道写什么了,先写了再说吧. 整个流程如下图: 关于AOP系列的文章很多,我这里也再重复造一下轮子. 首先,我们定义了一个IAopProxy,用于给AopProxyFactory用来创建Proxy实例的接口,代码如下: public interface IAopProxy { AopProxyBase CreateAopProxyInstance(MarshalByRefObject obj, Type type); } AO