求助! Active Record 的load方法无法获取$_POST中的参数 [ 求助交流 ]
官方推荐使用AR,获取用户数据,并保存到数据库
$model = new Customer;
if ($model->load(Yii::$app->request->post()) && $model->save()) {
// 获取用户输入的数据,验证并保存
},
为什么我这样写了以后,$model中的数据为空呢?数据库能添加记录,但是是一条空记录。 应该是load方法有问题
共 5 条回复
-
应该是你的Customer类中的代码问题,你试试用下debug里面的sql记录,就知道哪里出问题了;
点击表单的提交按钮,然后点击debugger(页面底部中间位置)里的log,可以看到mysql的数据库插入语句;
比如我这里提交后出现的正常的mysql语句:10 00:44:44.174 info yii\db\Command::query SHOW FULL COLUMNS FROM `releases` E:\web\Apache24\htdocs\basic\controllers\ReleaseController.php (11) 11 00:44:44.175 info yii\db\Connection::open Opening DB connection: mysql:host=localhost;dbname=xunwu E:\web\Apache24\htdocs\basic\controllers\ReleaseController.php (11) 12 00:44:44.195 info yii\db\Command::query SHOW CREATE TABLE `releases` E:\web\Apache24\htdocs\basic\controllers\ReleaseController.php (11) 13 00:44:44.195 trace yii\base\Model::onUnsafeAttribute Failed to set unsafe attribute 'file' in 'app\models\ReleaseForm'. E:\web\Apache24\htdocs\basic\controllers\ReleaseController.php (12) 14 00:44:44.213 info yii\db\Command::execute INSERT INTO `releases` (`type`, `name`, `campus`, `place`, `description`, `contact`, `picture_src`, `release_date`) VALUES ('0', '充电宝', '深旅', '教学楼J304', '小米', '13876576656', 'http://127.0.0.1:801/basic/web/uploads/1427993084.png', '15-04-03') E:\web\Apache24\htdocs\basic\controllers\ReleaseController.php (22)
-
chenlizhun 回复于 2015-04-28 21:55 举报
之前也遇到过这个问题,我的情况具体原因是,表单所采用的一个普通的FormModel,和需要插入到的数据表model不对应。
abuthu
注册时间:2014-10-10
最后登录:2015-04-04
在线时长:9小时29分
最后登录:2015-04-04
在线时长:9小时29分
- 粉丝0
- 金钱10
- 威望0
- 积分100