save方法返回true,但是为什么数据并未保存? [ 2.0 版本 ]
学习数据库保存中遇到了一个问题,控制器里的代码如下:
$entry = new EntryForm;
//如果是Post请求提交
if(Yii::$app->request->getIsPost()){
//表单模型设置属性为post值
$entry->setAttributes(Yii::$app->request->post());
//表单模型数据验证
if ($entry->validate()) {
//正确
$result = $entry->save();
var_dump($entry->attributes);
} else {
//返回错误提示
var_dump($entry->getErrors());
}
}else{
//如果不是Post请求,正常显示模板
return $this->render('entry',['model'=>$entry]);
}
最后能返回插入的id和数据,数据表里面相应的字段为空,只有id。
帖上EntryForm的代码:
<?php
namespace app\models;
use yii\db\ActiveRecord;
class EntryForm EXTENDS ActiveRecord{
public $name;
public $email;
public static function tableName()
{
return '{{user}}';
}
public function rules()
{
return [
[['name','email'],'required','message'=>'请填写!'],
['email','email','message'=>'邮箱格式不正确!'],
];
}
}
最佳答案
-
sevenyearsold 发布于 2015-09-01 16:48 举报
这里有问题,2.0的表前缀是
`
{{%user}}` public static function tableName() { return '{{user}}'; } `
共 1 条回复搞搞的传奇 觉得很赞
其他 0 个回答
没有找到数据。
hoogl 北京
注册时间:2015-08-24
最后登录:2020-04-15
在线时长:3小时55分
最后登录:2020-04-15
在线时长:3小时55分
- 粉丝1
- 金钱140
- 威望0
- 积分170