MongoDB 的聚合语句有时候会写的比较长,语句本身信噪比比较低,有很多的符号,比如{}[]:""$,写在代码里经常就是一大片.看起来眼睛都花了.如果不写在代码里又觉得不合适.
今天在想为什么没有一个类似于这种的框架呢:
class Aggregate:
""" Do some magic """
a = Aggregate()
a.match(time={"$gte": "2019"})
a.project(_id=0)
a.sort(time=-1)
# a.pipeline
# [{"$match": {"time": "$gte": "2019"}}, {"$project": {"_id": 0}}, {"sort": {"time": -1}}]
感觉这样在代码里层次感能更好一点,其实就是一个类似 ORM 自动生成 SQL.稍微找了一下,好像没有现成的轮子,难道别人都不会被类似的问题困扰吗?
