Maison >développement back-end >tutoriel php >thinkphp操作mongodb的问题
框架里面已经把mongodb
数据库连接配置好了,具体怎么实现CURD的操作,如下是我的操作
<code>$model = M('category'); // $model = D('category'); /** 查询 */ $result = $model->where($where)->select();</code>
我的想法是和框架自带的方法能和操作mysql
那样一样操作,但是发现这样行不通,老是说我的M
方法事例化有问题。但是我的mongodb
里面确确实实存在category的。求解
框架里面已经把mongodb
数据库连接配置好了,具体怎么实现CURD的操作,如下是我的操作
<code>$model = M('category'); // $model = D('category'); /** 查询 */ $result = $model->where($where)->select();</code>
我的想法是和框架自带的方法能和操作mysql
那样一样操作,但是发现这样行不通,老是说我的M
方法事例化有问题。但是我的mongodb
里面确确实实存在category的。求解
不知道我这个方法能不能解决你的问题。我之前也遇到这样的问题用M
方法出错,具体错误我忘记了可能和你的不太一样,我是用了D
方法和操作mysql
一样没问题,不过用D
方法需要注意,在model文件里面定义好对应的类就可以了。例如
<code><?php /** * Description: MongoDB操作 * Author: yangxiangming@live.com * Date: 2015/9/9 * Time: 13:35 */ namespace Bbsapi\Model; use Think\Model\MongoModel; class ExampleModel extends MongoModel { }</code></code>
调用操作如下
<code><?php /** * Description: MongoDB操作 * Author: yangxiangming@live.com * Date: 2015/9/9 * Time: 13:51 */ namespace \Controller; use Think\Model\ExampleModel; class ExampleController extends ExampleModel{ public function example(){ $where['_id'] = '54dd9116e4b061818991ac7d'; $model = D('Example'); /** 查询 */ $result = $model->where($where)->select(); /** 添加 */ $data['name'] = 'Example'; …… $model->add($data); /** 更新 */ $data['name'] = 'ExampleTmp'; …… $model->where($where)->save($data); /** 删除 */ $model->where($where)->delete(); } }</code>
参考链接