我正在使用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
答案 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;