在视图yii2中找不到类'yii \ models \ user'

时间:2017-01-12 17:02:00

标签: yii yii2 yii2-advanced-app

我正在使用YII2高级版,我正在尝试从一个小时但不是任何代码为我工作。我想在我的帖子页面中创建用户表的下拉列表。我发现了这个错误Class 'yii\models\user' not found。我用GII创建了这篇文章。我的_form.php代码

<?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

2 个答案:

答案 0 :(得分:1)

User::find()表示您将使用用户模型,因此scaisEdge已经回答了您的大写字母。

但是您必须知道您的User模型所处的命名空间。 Yii2没有用户模型,您必须创建它。您提到过,您正在使用高级模板。在这种情况下,您应该在'common / models / User.php'而不是'models / User.php'中创建用户模型。请按照Yii2 Guide

中的说明进行操作

答案 1 :(得分:0)

在php中,类名通常以大写字母开头,因此在像env这样的unix中(基于区分大小写的约束的文件系统),这必须匹配try

use yii\models\User;