今天想用tp5来做mongodb,但是查找各种教程各种连上不,最后看到thinkphp官网有介绍怎么连接mogodb,但是使用官方提示的下面方法还是不行
composer require topthink/think-mongo=1.*
先安装1.*的扩展驱动,对了php连接mongodb的扩展也不要忘记装了,那个我现在这里暂时不做过多讲解,windows上比较简单,这里咱们还是继续随着官方走,然后修改database.php文件
将type参数改为下面这样
'type' => '\think\mongo\Connection',
接下来可以使用Db类直接操作MongoDb了,例如:
Db::name('demo')
->find();
Db::name('demo')
->field('id,name')
->limit(10)
->order('id','desc')
->select();或者使用模型操作:
User::get(1);
User::all('1,2,3');MongoDb默认的主键是_id并且是一个ObjectID对象,如果需要和mysql一样使用id作为主键,可以如下参数:
// 强制把_id转换为id 'pk_convert_id' => true,
这么操作下来还是报错
最后在下面的回复找到正确解决方案了
下载:https://github.com/top-think/think-mongo
以上解压覆盖到\vendor\topthink\think-mongo,然后
然后,配置应用的数据库配置文件database.php的type参数和query参数为:
'type' => '\think\mongo\Connection', 'query' => '\think\mongo\Query',
即可正常使用MongoDb,例如:
Db::name('demo')
->find();
Db::name('demo')
->field('id,name')
->limit(10)
->order('id','desc')
->select();果然好了。
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/539
评论列表