2013-12-21 15:08:04 3021次浏览 2条回答 0 悬赏 50 金钱

项目做完了,客户说要所有表格全部默认主键倒叙显示数据,如何不用挨个表格更改,

还有就是如果有办法更改,那么会不会影响每一列的ajax排序?


希望懂的给出具体思路,别写个类名就完事了 我要看个类名就懂了 我也不会来这问了.

最佳答案

  • myself 发布于 2013-12-25 16:43 举报

    可以自己写个类继承AR类 在自己的类里重写defaultScope()方法按照pk倒序 然后model继承这个类 这样不行吗?

    2 条回复
    回复于 2013-12-26 08:24 回复

    哦 就是说只重载一次defaultScope()方法就可以了, 这个我试试.那么 如果这个方法重载之后, 会不会影响到每个search()中的$criteria->order = '** DESC' ;?

    回复于 2013-12-26 08:26 回复

    分先给你吧.

  • 回答于 2013-12-24 14:34 举报

    还是没太明白你问的是啥意思。

    是不是想让所有的数据显示倒序?而你不想挨个改?

    试试在model里面定义默认的scope

    public function defaultScope()
    {
    return array(
    'order' => 'xxxx',
    );
    }

    我没用过,应该是可以的,也不会影响ajax排序

    1 条回复
    回复于 2013-12-25 10:22 回复

    你说的这个意思 就是说 如果有100个model文件 那么我要定义100次defaultScope()这个fun是吗? 那跟我在该model下的search()添加一个条件有区别吗,我的意思就是有没有一个基类能控制整个项目所有的查询数据全都是按主键倒叙,还是说这种查询需要我自己补充子类然后继承哪个类? 这么说能理解吗?

您需要登录后才可以回答。登录 | 立即注册
ww198787
助理

ww198787

注册时间:2013-10-18
最后登录:2013-12-30
在线时长:10小时10分
  • 粉丝0
  • 金钱0
  • 威望0
  • 积分100

热门问题