2017-01-12 4 views
0

Я использую YII2 advanced, и я пытаюсь с какого-то часа, но не любой код, работающий на меня. Я хочу создать раскрывающийся список из таблицы пользователей на моей странице. Я нашел эту ошибку Class 'yii\models\user' not found. Я создал этот пост с GII. мой _form.php кодКласс 'yii models user' не найден во взглядах yii2

<?php 

use yii\helpers\Html; 
use yii\helpers\ArrayHelper; 
use yii\models\user; 
use yii\widgets\ActiveForm; 

/* @var $this yii\web\View */ 
/* @var $model app\models\Posts */ 
/* @var $form yii\widgets\ActiveForm 
<?php/* <?= $form->field($model, 'id')->textInput(['value' => \Yii::$app->user->identity->id]) ?> 
use yii\models\user; 
*/ 
?> 

<div class="posts-form"> 

    <?php $form = ActiveForm::begin(); ?> 

    <?= $form->field($model, 'post_title')->textInput(['maxlength' => true]) ?> 

    <?= $form->field($model, 'post_description')->textarea(['rows' => 6]) ?> 



    <?php 
     echo Html::activeDropDownList($model, 'author_id',ArrayHelper::map(User::find()->all(),'id','username'),['prompt'=>'Select User']); 
    ?> 

    <div class="form-group"> 
     <?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> 
    </div> 

    <?php ActiveForm::end(); ?> 

</div> 

Почему не работает, пожалуйста, кто-нибудь мне помочь. Спасибо advence

ответ

1

User::find() показывает, что вы должны использовать модель User, так что в верхнем регистре, как scaisEdge ответил вам.

Однако вы должны знать, в каком пространстве имен находится ваша модель пользователя. У Yii2 нет модели пользователя, вы должны ее создать. Вы упомянули, что используете расширенный шаблон. В этом случае вы должны создать модель пользователя в «common/models/User.php» вместо «models/User.php». Следуйте описанию в Yii2 Guide.

+0

Спасибо, что у меня есть мое мнение. Теперь я использую использование common \ models \ User; – Coder

+0

Работает отлично. Но просто я спрашиваю, что это правильный метод? или неправильно? – Coder

0

В PHP обычно имя класса начинается с заглавным полукоксом так в UNIX как окр (с файловой системой на основе случае чувствительной Constrain) это должно соответствовать попробовать

use yii\models\User; 
+0

[email protected] Я каждый раз смотрю ваш номер. Надеюсь, что в один прекрасный день это будет 1000000. – Coder

 Смежные вопросы

  • Нет связанных вопросов^_^