今天用url访问thinkphp构造的接口,代码如下:
$MyModel = M('My');
if($MyModel->create()){
echo "create success";
}else{
echo $MyModel->getError();
}
结果用 http://localhost/controller/action?param=xxx 去访问的时候,总是返回非法数据对象。
网上查了半天,都说是数据库里必填的项 url没有传值给他。但是我想,如果是我来设计Thinkphp,我肯定不会这么设计,万一有些字段不应该前端传进来,而是我需要去数据库里拿的话,那岂不是很悲剧。于是我在网上继续寻找,终于在thinkphp的官网发现了这么一句话
create方法如果没有传值,默认取$_POST数据
链接如下:http://doc.thinkphp.cn/manual/create.html
所以要使用create方法,需要默认使用post方法来传参数。