Home > Backend Development > PHP Tutorial > YII新手提问,$model->save() 失败

YII新手提问,$model->save() 失败

WBOY
Release: 2016-06-06 20:32:25
Original
1714 people have browsed it

<code>public function actionTestApply()
    {
        if (!Yii::app()->user->isGuest) {
            $model = Apply::model()->findByPk($_POST['product_id']);
            if (isset($_POST['LEMONCMS_CSRF_TOKEN'])) {
                $model->test_text = $_POST['test_text'];
                $model->img = $_POST['img'];
                if ($model->save()) {
                    $this->redirect(array('user/apply'));
                }
            }
        } else {
            $this->render("error");
        }
    }
</code>
Copy after login
Copy after login

能打印出 $model->test_text $model->img

<code>public function rules()
    {
        // NOTE: you should only define rules for those attributes that
        // will receive user inputs.
        return array(
            array('user_id, product_id', 'required'),
            array('user_id, product_id', 'numerical', 'integerOnly'=>true),
            array('insert_time', 'safe'),
            // The following rule is used by search().
            // @todo Please remove those attributes that should not be searched.
            array('id, user_id, insert_time, product_id', 'safe', 'on'=>'search'),
        );
    }
</code>
Copy after login
Copy after login

YII新手提问,$model->save() 失败

这是数据库
这是别人写的

回复内容:

<code>public function actionTestApply()
    {
        if (!Yii::app()->user->isGuest) {
            $model = Apply::model()->findByPk($_POST['product_id']);
            if (isset($_POST['LEMONCMS_CSRF_TOKEN'])) {
                $model->test_text = $_POST['test_text'];
                $model->img = $_POST['img'];
                if ($model->save()) {
                    $this->redirect(array('user/apply'));
                }
            }
        } else {
            $this->render("error");
        }
    }
</code>
Copy after login
Copy after login

能打印出 $model->test_text $model->img

<code>public function rules()
    {
        // NOTE: you should only define rules for those attributes that
        // will receive user inputs.
        return array(
            array('user_id, product_id', 'required'),
            array('user_id, product_id', 'numerical', 'integerOnly'=>true),
            array('insert_time', 'safe'),
            // The following rule is used by search().
            // @todo Please remove those attributes that should not be searched.
            array('id, user_id, insert_time, product_id', 'safe', 'on'=>'search'),
        );
    }
</code>
Copy after login
Copy after login

YII新手提问,$model->save() 失败

这是数据库
这是别人写的

<code>php</code><code>if ($model->save()) {
                    $this->redirect(array('user/apply'));
                }
</code>
Copy after login

这一段我习惯写成

<code>php</code><code>if (!$model->save()) {
    dump($model->errors);
}
$this->redirect(['user/apply']);
</code>
Copy after login

这样如果没有save成功就会打印出错误了

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template