drykiss

drykiss

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

  • 财富值4520
  • 威望值0
  • 总积分5030

个人信息

  • 回复了 的回答

    你應該先var_dump models 看看內容是甚麼!!
    hasMany : 一對多 => 一個客戶可以有很多訂單
    hasOne : 一對一 => 一個訂單只能有一個客戶

    把兩張 table join 起來:

    use app\models\Order;
    class Customer extends model
    {
      public function getOrder()
        {
        	return $this->hasMany(Order::classname(), ['id' => 'order_id']);
        }
    }
    
    use app\models\Customer;
    class Customer Controller extends Controller
    {
       $customer = Customer::find()->joinwith('order')->all();
       return $this->render('index',['customer' => $customer])
    }
    
    HTML :  一對多的狀況
    foreach($customer as $key => $val){    //
        $val->id; //各自的 customer['id']
        foreach($val['order'] as $or_key => $or_val){
            $or_val;    //訂單的資訊
        }
    }
    
    

    多谢,虽然不是太懂,要学的地方感觉还有好多

  • 2015-11-01 已签到
    连续签到3天,获得了15个金钱
  • 2015-10-31 已签到
    连续签到2天,获得了10个金钱
  • 提出了问题
    where条件查询怎么写
  • 回复了 的回答

    你應該先var_dump models 看看內容是甚麼!!
    hasMany : 一對多 => 一個客戶可以有很多訂單
    hasOne : 一對一 => 一個訂單只能有一個客戶

    把兩張 table join 起來:

    use app\models\Order;
    class Customer extends model
    {
      public function getOrder()
        {
        	return $this->hasMany(Order::classname(), ['id' => 'order_id']);
        }
    }
    
    use app\models\Customer;
    class Customer Controller extends Controller
    {
       $customer = Customer::find()->joinwith('order')->all();
       return $this->render('index',['customer' => $customer])
    }
    
    HTML :  一對多的狀況
    foreach($customer as $key => $val){    //
        $val->id; //各自的 customer['id']
        foreach($val['order'] as $or_key => $or_val){
            $or_val;    //訂單的資訊
        }
    }
    
    
    <?php foreach ($orders as $order):?>
    <?php echo $order['order_name'];?>
    <?php endforeach;?>
    

    这样到是出来了,我有点问题,希望能解释下,为什么要通过foreach赋值给$order才能显示?其实我这只是显示一条,没必要用foreach;还有一点,就是上面那位说的数组和类的显示方式,有什么区别,不是很太懂

  • 提出了问题
    hasMany与hasOne前台怎样调用
  • 2015-10-30 已签到
    连续签到1天,获得了5个金钱
  • 回复了 的回答
    use models\model;
    
    Class DemoController extends Controller
    {
        public function actionIndex(){
           $model = model::find()->all();
           return $this->render('index',[
                'model' => $model
           ]);
        }
    }
    
    前台在 
    <?php echo $model->id; ?>
    

    我就是这样做的,但是还是提示“Trying to get property of non-object”,是哪里不对吗?真TM郁闷

  • 回复了 的回答

    因为migrate不光是支持mysql迁移,还支持其他数据库,而其他数据库不一定有这个类型。。。所以migrate也没有。。。

    说的我好不信,有没有什么依据没?

  • 回复了 的回答

    controller传$model到前台,前台$model->id就可以了~

    在前台直接调用?
    <?php echo $model->id; ?>

    是这样吗?不对啊,提示"Trying to get property of non-object"

副总裁 等级规则
5030/10000
资料完整度
20/100
用户活跃度
10/100

Ta的关注

5

Ta的粉丝

6

Ta的访客

25