所以我试图用Python Cubes Framework实现一些BI,但是遇到了一些问题。
基本上,我试图做一个“简单的” PointCut /切片和骰子,我没有任何运气。我在PostGis中使用PostgreSQL数据库。
我的model.json是:
{
    "dimensions": [
        {"name": "user", "attributes": ["id", "username"]},
        {"name": "resources", "attributes": ["id", "resource_simple_name"]},
        {"name":"created_on", "role": "time"}
    ],
    "cubes": [
        {
            "name": "users_resources_likes",
            "dimensions": ["user", "resources", "created_on"],
            "mappings": {
                "user.id": "auth_user.id",
                "user.username": "auth_user.username",
                "resources.id": "resources.id",
                "resources.resource_simple_name": "resources.resource_simple_name",
                "created_on": "created_on"
            },
            "joins": [
                {
                    "master": "user_id",
                    "detail": "auth_user.id"
                },
                {
                    "master": "resource_id",
                    "detail": "resources.id"
                }
            ]
        }
    ]
}
 
如果我尝试在切片机上做一个日期的poincut
aggregate?drilldown=created_on&cut=created_on:2012
 
我得到一个 DataError: (DataError) invalid input syntax for type timestamp with time zone: "2012"
搜索了一会后,我读到它可能是因为我的postgresql数据库有时间戳记:
created_on timestamp with time zone NOT NULL DEFAULT '2014-02-10 00:00:00+00'::timestamp with time zone, 所以我试图做:
?drilldown=created_on&cut=created_on:2012-09-15T09:37:59+00:00
 
我得到了:
{
error: "unknown_user_error",
message: "Wrong dimension cut string: 'created_on:2012-09-15T09:37:59 00:00'"
}
 
我究竟做错了什么?是我的问题model.json吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
我发现向模型中的日期添加更多信息可以解决问题:
{
    "name": "created_on",
    "label": "Date Created",
    "role": "time",
    "info": {
        "cv-datefilter": true,
        "cv-datefilter-hierarchy": "weekly"
    },
    "levels": [
           {
               "name":"year",
               "label":"Year",
               "info": { "cv-datefilter-field": "year" }
           },
           {
               "name":"quarter",
               "label":"Quarter"
           },
           {
               "name":"month",
               "label":"Month"
           },
           {
               "name":"week",
               "label":"Week",
               "info": { "cv-datefilter-field": "week" }
           }
       ],
    "hierarchies": [
        {
            "name": "weekly",
            "label": "Weekly",
            "levels": [ "year", "week"]
        },
        {
            "name": "monthly",
            "label": "Monthly",
            "levels": [ "year", "quarter", "month"]
        }
    ]
}