我有一个表单,在提交时,我将值传递给控制器,数组看起来像这样。
[submit] => Post
[File] => Array
(
[content] => dfgdfgdfg
)
[Groups] => Array
(
[group_name] => 190
)
[News] => Array
(
[is_private] => 1
[user_id] => 285
[content] => <p>dfgdfgdfg</p>
)
[Posts] => Array
(
[rating] => 5.2
[rating_enabled] => on
)
除评级外的所有值都正确保存到数据库中。我在前端使用滑块,其值是评级。在 db 中,评级字段是十进制类型,帖子[评级] 的类型是字符串,所以我使用 floatval 将其转换为浮点数。
if( isset($this->request->data['Posts']['rating_enabled']) ){
$this->request->data['News']['rating'] = floatval($this->request->data['Posts']['rating']);
}
保存完成后
$this->News->save($this->request->data);
只有$this->request->data['News']['rating']没有保存,但当选中数据数组时,的值是
[News] => Array
(
[is_private] => 1
[user_id] => 285
[content] => <p>dfgdfgdfg</p>
[rating] => 5.2
)
有人可以告诉我出了什么问题吗
请检查 mysql 表评级必须为浮动