我使用的是YII 2.0.6基本版,三个文件的代码如下: -
模型文件即' UserForm.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']
];
}
}
控制器文件即' SiteController.php'
public function actionUser()
{
$model = new UserForm;
if($model->load(Yii::$app->request->post())&& $model->validate())
{
Yii::$app->session->setFlash('success','You have entered the data correctly.');
}
$this->render('user',['model'=>$model]);
和第三个视图文件即' user.php'
use yii\helpers\Html;
use yii\widgets\ActiveForm;
if(Yii::$app->session->hasFlash('success'))
{
echo Yii::$app->getFlash('success');
}
$form = ActiveForm::begin()
<? $form->field($model,'name'); ?>
<? $form->form($model,'email'); ?>
<? Html::submitButton('Submit',['class' => 'btn btn-success']); ?>
ActiveForm::end()
我在浏览器中使用此链接来显示数据。我认为这个链接是正确的。
http://localhost/basic/web/index.php?r=site/user
当我转到此链接时,浏览器不显示任何内容,既不显示错误也不显示输出。
愿任何人帮帮我,问题出在哪里? 提前谢谢。
答案 0 :(得分:2)
我认为您应该在actionUser
这样:
public function actionUser()
{
$model = new UserForm;
if($model->load(Yii::$app->request->post())&& $model->validate())
{
Yii::$app->session->setFlash('success','You have entered the data correctly.');
}
return $this->render('user',['model'=>$model]); // return here