librelist archives

« back to archive

新增模型API: instance:rearrangeForeign(field,

新增模型API: instance:rearrangeForeign(field,

From:
Tang Daogang
Date:
2012-05-12 @ 04:15
设计如下:

foreign中的对象索引,按输入的一批id序号进行排序
1. foreign中的id数比传入的id序列多。可能传入的id,都是foreign中有的,但是要少。;
2. 相等;
3. foreign中的要少;
4. 传入的id中,有foreign中没有的;

在具体模型时,foreign中存的是id序列
在Unfixed时,foreign中存的是模型名称+id序列
在Anystring时,foreign中存的是任意字符串

排序如果要通用,就应该对这3种都支持


这样,新生成一个表,对传入参数进行检查,一个元素一个元素取,看foreign中是否有对应的,如果有,就往新生成的表里面添加,并删除此元素在原表中的位置。等输入参数检查完了,看原来的表中不家没有剩余的,有的话,就直接附加在此表的后面。

再将新的id列表压到同名的redis的zset中(原有值清除),就行了

取名:rearrangeForeign

欢迎测试。

-- 
Nothing is impossible.