首頁 >php框架 >ThinkPHP >thinkphp create方法失敗怎麼辦

thinkphp create方法失敗怎麼辦

藏色散人
藏色散人原創
2022-12-06 10:21:221445瀏覽

thinkphp create方法失敗的解決方法:1、寫一個測試方法,模擬前端頁面使用者輸入的數據,程式碼如「  public function insert2(){...}」;2、給資料庫中的status欄位新增預設值為1並儲存設定即可。

thinkphp create方法失敗怎麼辦

本教學操作環境:Windows7系統、THINKPHP5.1版、Dell G3電腦。

thinkphp create方法失敗怎麼辦?

解決THINKPHP5.1模型中create方法寫入失敗,但是沒有錯誤提示

思路,寫一個測試方法,模擬前段頁面用戶輸入的數據,保存為$data,類似下面的代碼

  public function insert2()
    {
        $data = [
            'name'=>'chen',
            'password'=>'abc1234',
            'email'=>'chen@qq.com',
            'mobile'=>'18285859696'
        ];
        return UserModel::create($data);
    }

在瀏覽器中訪問一下這個方法,返回如下結果,可以看到,字段status是沒有默認值的,而我們也沒有給他傳遞值,所以create方法寫入失敗了!

thinkphp create方法失敗怎麼辦

資料庫中的欄位截圖,資料庫中status欄位確實沒有預設值,我們給預設值選項打上勾,然後給個1值,儲存然後再試試看

 

 thinkphp create方法失敗怎麼辦

可以看到成功的回傳值了

 

## 

thinkphp create方法失敗怎麼辦

#心得:下次遇到不提示錯誤的情況,就寫一個新方法,模擬前端的數據,還有個很重要的方法就是,也要去看runtime下的log,它也會提示對應的錯誤

[ info ] [ DB ] INIT mysql
[ sql ] [ DB ] CONNECT:[ UseTime:0.001346s ] mysql:host=localhost;dbname=zh;charset=utf8
[ sql ] [ SQL ] SHOW COLUMNS FROM `zh_user` [ RunTime:0.001726s ]
[ error ] [10501]SQLSTATE[HY000]: General error: 1364 Field 'status' doesn't have a default value[D:\Wamp64\www\zh\thinkphp\library\think\db\Connection.php:7
error就是錯誤,也提示了Field 'status' doesn't have a default value

### #######問題解決! ######推薦學習:《###thinkPHP影片教學###》###

以上是thinkphp create方法失敗怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn