zhong21jia 2011-12-29 12:08:26 3804次浏览 2条回复 0 0 0

1.控制器:

<?php
public function actionPaymentAdmin() {
    $model = new PaymentGenerate('search');
    $this->render('admin', array(
        'model' => $model,
    ));
}
?>

2.视图:

<div class="right-content f-r">
<?php
$this->widget('zii.widgets.grid.CGridView', array(
    'id' => 'real-estate-building-grid',
    'dataProvider' => $model->search(),
    'filter' => $model,
    'columns' => array(
        'id',
        'name',
        'house_id',
        'unit_number',
        'floor_number',
    ),
));
?>
</div>

如果如上所写的话,会得到所有数据库表中的信息,并生成一个表格表单, 有时候这不是我们所想要的,比如在信息的筛选中,我们只要house_id等于14的所有信息, 那么这样的话,是得不到我们所想要的信息的。 那么我们就需要在控制器中再增加一些代码,如下:

<?php
public function actionPaymentAdmin() {
    $model = new PaymentGenerate('search');
    
    $id = yii::app()->user->id;
    //查找对应房屋的缴费信息。
    $house_id = Profile::model()->find("user_id=$id")->attributes['house_id'];
    $criteria = new CDbCriteria;
    $criteria->condition = "house_id=$house_id";
    $model->dbCriteria = $criteria;
    
    $this->render('admin', array(
        'model' => $model,
    ));
}
?>

如上我们就可以得到我们所想要的house_id等于14的所有信息了!

  • 回复于 2012-01-04 11:14 举报

    同求啊?群里没有热心人啊。呵呵,你看看你报什么错啊。我帮你分析下啊。

  • 回复于 2012-07-05 11:38 举报

    楼主是分享经验吧?应该不是在求助哦

您需要登录后才可以回复。登录 | 立即注册