链接mongodb 使用pymong

链接mongodb数据库的两种方式

第一种 ,导入import mongoengine包,类似以django自带的,链接数据库的那套

第二种 import pymongo,类似pymsql生连,生写的方式   https://www.runoob.com/python3/python-mongodb.html

第一种研究一半没研究明白

第二种,可以

import pymongo

那怎么连接有用户名面的呢,直接上代码

def get_mongodbData(request):
mongodb_database = "bingli_avatar"
mongodb_table = "medicalrecords"
username="bingli"
password="haodf%40haodf.com"#明明密码是haodf@haodf.com 为啥转成这样了
host_port="10.1.20.249:20000"

mongodb_address="mongodb://"+username+":"+password+"@"+host_port+"/"+mongodb_database
#myclient = pymongo.MongoClient("mongodb://bingli:haodf%40haodf.com@10.1.20.249:20000/bingli_avatar") 其中的 @符号,是需要转化 的 %40 ,转化规则是URL-encode
#远程用户名密码的就是怎么拼接"mongodb://用户名:密码@host:port/数据库" 数据库有时候必填,否报错
myclient=pymongo.MongoClient(mongodb_address)
mongodb_database = myclient[mongodb_database] # 连库
mongodb_table = mongodb_database[mongodb_table] # 连集合
cooperationId = request.GET.get("cooperationId")
  #注意一点,当使用request接收的时候,接收的这个cooperationId参数是 str类型,而mongodb搜索,也是要有类型区别的,比如,下面搜cooperationId就必须是int型所以的转化
for x in mongodb_table.find({'patientId':int(cooperationId)}):
z = json_util.dumps(x)
print(z)
return HttpResponse(z)

娄肖杰 8-27 10:01:04
搜url编码就好了

娄肖杰 8-27 10:01:49
咱们请求的链接和参数,有的时候如果用gbk,可能需要%形式的

张正来 8-27 10:01:49
哦,那就是这个 转码的规则  多谢 

娄肖杰 8-27 10:01:59
utf-8 直接中文就行

 

mongdb链接,是需要这个身份验证的,比如我链接,bingli_avatar库,只是 我链接的10.1.20.33这个库,整个不需要权限而已

字段,下面的,  数据库名,用户名,密码

这两个明显不一样,有数据库和用户的

 

with  xxx  as  aaa:  读取数据的用法,

https://www.jianshu.com/p/1a02a5b63c88

门诊方法用到获取mongdb上

原文地址:https://www.cnblogs.com/zhenglai/p/13537821.html