コード例 #1
0
ファイル: models.py プロジェクト: xbryanc/commcare-hq
 def total(self):
     key = ["name", self.request.domain, self.request.couch_user._id]
     results = ReportConfig.get_db().view(
         'reportconfig/configs_by_domain',
         include_docs=False,
         startkey=key,
         endkey=key+[{}],
         reduce=True,
     ).all()
     return results[0]['value'] if results else 0
コード例 #2
0
ファイル: models.py プロジェクト: kkaczmarczyk/commcare-hq
 def total(self):
     key = ["name", self.request.domain, self.request.couch_user._id]
     results = ReportConfig.get_db().view(
         'reportconfig/configs_by_domain',
         include_docs=False,
         startkey=key,
         endkey=key+[{}],
         reduce=True,
     ).all()
     return results[0]['value'] if results else 0
コード例 #3
0
 def handle(self, report_slug, *args, **options):
     kwargs = {'stale': settings.COUCH_STALE_QUERY}
     key = ["name slug"]
     result = cache_core.cached_view(ReportConfig.get_db(),
                                     "reportconfig/configs_by_domain",
                                     reduce=False,
                                     include_docs=False,
                                     startkey=key,
                                     endkey=key + [{}],
                                     **kwargs)
     for report_config in result:
         domain, owner_id, slug = report_config['key'][1:4]
         if slug == report_slug:
             print("%s, %s, %s" % (domain, owner_id, slug))
コード例 #4
0
    def handle(self, *args, **options):
        db = ReportConfig.get_db()
        results = db.view('reportconfig/configs_by_domain',
            startkey=["name"], endkey=["name", {}],
            reduce=False,
            include_docs=False,
        ).all()

        configs_to_save = []
        for config in iter_docs(db, [r['id'] for r in results]):
            if migrate(config, db):
                configs_to_save.append(config)

            if len(configs_to_save) > 100:
                db.bulk_save(configs_to_save)
                configs_to_save = []
        db.bulk_save(configs_to_save)