V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
billgreen1
V2EX  ›  数据库

有比较成熟的 MongoDB 的 ODM 吗?

  •  
  •   billgreen1 · 2016-07-13 13:43:06 +08:00 · 942 次点击
    这是一个创建于 3060 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在 ricequant 上有个 get_fundamental 函数。 看其文档知道是用 sqlalchemy 实现的。 其接受一个参数 query ,是 sqlalchemy 的 Query 类型。

    我觉得这个实现很方便。用户调用的时候,有很好的智能提示。如果用 sqlalchemy ,我大概也能写出来。

     context.fundamental_df = get_fundamentals(
            query(
                fundamentals.income_statement.revenue, fundamentals.eod_derivative_indicator.pe_ratio
            ).filter(
                fundamentals.eod_derivative_indicator.pe_ratio > 25
            ).filter(
                fundamentals.eod_derivative_indicator.pe_ratio < 30
            ).order_by(
                fundamentals.income_statement.revenue.desc()
            ).limit(
                10
            )
        )
    

    但是公司现在的数据库用的是 mongo ,目前好像没有比较好用的 ODM ,能让用户写出这样的 query 。 唯一有个类似的就是 mongoalchemy 了。但是不是很成熟,且好像不更新了。

    我的需求就是:如果数据库 mongodb , 这个功能该怎样实现?

    5 条回复    2016-07-13 23:58:42 +08:00
    jun4rui
        1
    jun4rui  
       2016-07-13 13:51:49 +08:00
    nosql 不需要吧?已经够直接了
    billgreen1
        2
    billgreen1  
    OP
       2016-07-13 13:54:03 +08:00
    @jun4rui 是呀,如果用 sqlalchemy 是很容易解决的,但是目前公司的数据是存的 mongodb ,我也没办法
    janxin
        3
    janxin  
       2016-07-13 19:36:33 +08:00
    mongoengine
    lululau
        4
    lululau  
       2016-07-13 20:14:59 +08:00 via iPhone
    mongoid
    AZLisme
        5
    AZLisme  
       2016-07-13 23:58:42 +08:00
    mongoengine +1
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1327 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 17:48 · PVG 01:48 · LAX 09:48 · JFK 12:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.