2016-08-23 39 views
1

你好我一直在得到未知的属性错误,当我没有使用foreach方法获取活动查询实例的值,我需要帮助访问它,而不使用foreach。在ActiveQuery中获取未知属性Yii 2

这里是我当前的代码

$status = SiteController::LookupStatus($_user); 
    <?php if($status->status == 1): //if status == 0?> 
     <?= HTML::a('<b>REMOVE</b>', 
       ['site/removesubject', 'containerid' => $values['containerid']], 
             ['class' => 'btn-danger btn-transparent' , 'data-method' => 'post']) ?> 
             <?php else: ?> 
             <!-- do this --> 
         <?php endif; ?> 

我试着用$status->status访问它,但我得到的错误,但是当我使用foreach方法,我成功地得到它。

而且,这里是我的活动记录

public static function LookupStatus($clientid){ 
    return Enrollment::find()->select(['status'])->where([ 
     'clientid' => $clientid, 
    ]); 
    } 
+4

'招生::发现() - >选择([ '状态']) - >其中([ '的clientid'=> $客户端ID,) - >一个()'试试这个 – ineersa

回答

2

您应该指定一个(),所有的()在查找结束()的模型。

public static function LookupStatus($clientid){ 
    $model = Enrollment::find()->select(['status']) 
      ->where(['clientid' => $clientid,]) 
      ->one() 
    return $model->status; 
    } 
+0

回报报名: :find() - > select(['status']) - > where(['clientid'=> $ clientid]) - > one()应该足够 –

相关问题