dao.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. from db import MongoClientHelper
  2. class MongoDao:
  3. def __init__(self, collection_name):
  4. self.db_client = MongoClientHelper()
  5. self.collection_name = collection_name
  6. def get_one_record_by_query(self, query):
  7. res = self.db_client.find_one(self.collection_name, query)
  8. return res
  9. def get_records_by_query(self, query):
  10. """根据查询返回多个结果"""
  11. collections = self.db_client.find_many(self.collection_name, query)
  12. records = [collection for collection in collections]
  13. return records
  14. def get_one_field_data(self, field):
  15. """获取指定key的所有数据,返回列表"""
  16. fields = [field]
  17. field_records = self.db_client.find_fields(self.collection_name, fields)
  18. return [record[field] for record in field_records]
  19. def get_fields_data(self, fields):
  20. records = self.db_client.find_fields(self.collection_name, fields)
  21. return [record for record in records]
  22. def get_all_records(self):
  23. records = self.db_client.find_all(self.collection_name)
  24. return [record for record in records]
  25. if __name__ == '__main__':
  26. collection_name = "obrand-ec"
  27. dao = MongoDao(collection_name)
  28. field = "nick"
  29. res = dao.get_all_records()
  30. print(len(res))