0

私はYiiについて2週間研究しているだけですが、プロジェクトがあります。使命は、Yii Cactiveform を使用してフォームを作成することです。しかし、私はこのエラーを受け取ります: get_class() は、パラメーター 1 がオブジェクトであり、配列が指定されていることを期待しています。これは私のコントローラーです:

 public function actionPersonal()
{
    // Layout
    $this->layout = '../layouts/news_style';
    // Title
    $this->pageTitle = Yii::app()->params['news_title'];
    // Description
    $this->pageDescription = Yii::app()->params['news_description'];
    // Breadcrumbs
    $this->breadcrumbs = array(
        'My Profile' => array(),
    );
    $layout = $this->_layout();
    return $this->render('my_profile', array(
        'user' => Yii::app()->user->getUser(),
        'postDoXe' => $layout['postDoXe'],
        'newPosts' => $layout['newPosts'],
    ));
}

my_profile.php

<div class="input-group">
                    <?php echo $form->label(Yii::app()->user->getUser(),'username'); ?>
                    <?php echo $form->textField(Yii::app()->user->getUser(),'username'); ?>    
</div>
4

1 に答える 1

0
Yii::app()->user->getUser()

配列を返しますが、フォーム要素のモデルが必要です。検証用の配列を指定しました

<?php echo $form->textField(Yii::app()->user->getUser(),'username'); ?>

"Yii::app()->user->getUser()" から返された ID を使用してモデルを設定し、そのモデルをフォームで使用する必要があります。

<?php echo $form->textField($model ,'username'); ?>
于 2013-11-04T05:38:18.983 に答える