新人求教一个关于brophp框架r_select()的用法,今天在使用这个函数时候感到困惑,源代码如下:            $order=D("user");
            $orderList=$order->field("uid")->where(array("uid"=>"8")->r_select(array('web_order','w_orderid,w_orderTime,w_workid,w_finishTime,state','uid'));
            p($orderList);
如上所示,我建有user和web_order两个表,uid为user表的主键,为web_order表的外键,对于user表可以用where()来限制,但如何对从表web_order的字段state进行限制呢,求教各位phper,无限感激。
想要得到 uid=‘8’&&state=“未维修”。

解决方案 »

  1.   

    brophp 的 ORG 是很差的,在设计时并没有考虑你这样的需求
    同时规则太多,参数形式也不统一你可以给 where 方法的参数数组的关联键附加表名来解决
    ->where(array("uid"=>"8", 'web_order.state' => 'val'))
    可通过 sql 方法看看 SQL 指令是否正确
      

  2.   

    尝试过您提供的方法,发现sql语句 select [字段名] from user where uid=8 and web_order.state=[val] 。from 后面只有user表名,sql语句错误,看来只有直接写sql语句解决了T_T
    非常感谢斑竹大大的回答。