Работа с Yii-кадрами Я размещаю UserFrom.php
в корневом каталоге или в папке с кодом ниже
<?
namespace app\models;
use yii\base\Model;
class UserForm extends Model
{
public $name;
public $email;
public function rules()
{
return[[['name','email'],'required'],
['email','email'],]
}
}
?>
и root/frontend/controllers/Sitecontroller.php
файл root/frontend/controllers/Sitecontroller.php
. добавьте следующий код
public function actionUser()
{
$model=new UserForm;
if($model->load(Yii::$app->request->post()) && $model->valideate())
{
}
else
{
return $this->render('userForm',['model'=>$model] );
}
}
затем окончательно добавьте новый файл в root/views/site/userForm.php
его код ниже
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form=ActiveForm::begin();?>
<?php $form->field($model,'name'); ?>
<?php $form->field($model,'email'); ?>
<?php Html::submitButton('Submit',['class'=>'btn btn-success']);
если я открою url, я получаю ошибку url = http://localhost/yiicomm/frontend/web/index.php? r = сайт/пользователь
PHP Fatal Error - yii\base\ErrorException Класс 'frontend\controllers\UserForm' не найден. я чувствую, что я правильно поставил, но получаю ошибку. что не так в моем коде
Попробуйте использовать полное пространство имен:
$model=new \app\models\UserForm;
Или включите следующую строку вверху вашего контроллера:
use app\models\UserForm;
Вы забыли использовать Use Operator для получения полного имени для вашего класса UserForm, например
use app\models\Userform;
можете добавить
use app\models\UserForm;
в вашем контроллере