这篇文章主要介绍“thinkphp create方法失败如何解决”,在日常操作中,相信很多人在thinkphp create方法失败如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”thinkphp create方法失败如何解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
thinkphp create方法失败的解决办法:1、写一个测试方法,模拟前端页面用户输入的数据,代码如“ public function insert2(){...}”;2、给数据库中的status字段添加默认值为1并保存设置即可。
解决THINKPHP5.1模型中create方法写入失败,但是没有错误提示
思路,写一个测试方法,模拟前段页面用户输入的数据,保存为$data,类似下面的代码
public function insert2() { $data = [ 'name'=>'chen', 'password'=>'abc1234', 'email'=>'chen@qq.com', 'mobile'=>'18285859696' ]; return UserModel::create($data); }
在浏览器中访问一下这个方法,返回如下结果,可以看到,字段status是没有默认值的,而我们也没有给他传递值,所以create方法写入失败了!数据库中status字段确实没有默认值,我们给默认值选项打上勾,然后给个1值,保存然后再试试。
心得:下次遇到不提示错误的情况,就写一个新方法,模拟前端的数据,还有个很重要的方法就是,也要去看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属于一种免费的开发框架,能够用于开发前端网页,最早thinkphp是为了简化开发而产生的,thinkphp同时也是遵循Apache2协议,最初是从Struts演变过来,也把国外一些好的框架模式进行利用,使用面向对象的开发结构,兼容了很多标签库等模式,它能够更方便和快捷的开发和部署应用,当然不仅仅是企业级应用,任何php应用开发都可以从thinkphp的简单、兼容和快速的特性中受益。
到此,关于“thinkphp create方法失败如何解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!