ww198787

ww198787

这家伙有点懒,还没写个性签名!

  • 财富值0
  • 威望值0
  • 总积分100

个人信息

  • 回复了 的回答

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

    分先给你吧.

  • 回复了 的回答

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

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

  • 回复了 的回答

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

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

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

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

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

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

  • 提出了问题
    yiiDB主键排序问题,进来看详细.
  • 回复了 的回答

    $conn = Yii::app->db();
    $sql = '

    select s.

    Name
    

    , SUM(o.Count)/COUNT(o.ShipID) as ave
    from tbl_order as o
    LEFT JOIN tbl_ship as s ON s.ID = o.ShipID

    GROUP BY o.ShipID';

    $qRecord = $conn->execute($sql);

    这里把qRecord抛到前台就可以了。
    注:没有测试,如果不对,下午测试之后再发一份!

    不要DB 我这SQL不复杂 直接走 model的search()就行,
    $criteria=new CDbCriteria;

    if(Yii::app()->getController()->getAction()->id == "FillingT" ){ 
    $criteria->select = ' s.Name as ShipID,ROUND(SUM(t.Count)/COUNT(t.ShipID),2) as ave  ';
    $criteria->join = 'LEFT JOIN tbl_ship as s ON s.ID = t.ShipID  '; 
        $criteria->group = 't.ShipID'; 
    }
    

    问题解决了 在这个model新建属性 ave 就可以了.

  • 回复了 的回答

    应该是你的用法不对。

    你在对应点C里面写一个方法protected function getStateName($data,$row){

    retrun $data->opType->getStateName(3);

    }

    然后再V里面 'value' =>array($this,'getStateName'),试试

    确实是用法不对, CGridView控件 接收 $model 数据时,每次他都会查询一次值,但是走的是 m层数据 我在c层对 opType 赋值 但是并没有走c层,所以m层的opType 属性还是原来的值,所以报错,把c层的赋值 移到 m层就可以了 用 afterFind .就可以了.

  • 回复了 的回答

    $form=$this->beginWidget('CActiveForm', array(

    'id'=>'login-form',
    'enableAjaxValidation'=>true,
    'enableClientValidation'=>true,
    'clientOptions'=>array(
    	'validateOnSubmit'=>true,
    ),
    

    ));

    回复 : 'enableClientValidation'=>true 去掉试试. 还有就是 你的form表单元素 你仔细检查下 是不是 用户名 和 密码 的字段 你命名重复了 标签你可能是不一样的 但是生成 input元素的时候的字段你是不是重复了 也可能导致你说的这种情况.

  • 还有就是 你在 对应提交的action中加入相应的ajax代码了吗?如下

    if(isset($_POST['ajax']) && $_POST['ajax']==='user-form')
        {
            echo CActiveForm::validate($model);
            Yii::app()->end();
        }
    
助理 等级规则
100/200
资料完整度
10/100
用户活跃度
0/100

Ta的关注

0

Ta的粉丝

0

Ta的访客

3