def handle(self, *args, **options):
        if settings.FEEDS_ENABLED:
            for database_name in document_stores_to_process(args):
                manager = get_feed_db_from_main_db_name(database_name)
                print ("Database %s") % (database_name,)
                logger.info("Database %s" %database_name)
                SyncOnlyChangedViews().sync_feed_views(manager)
                print "Done."
            return

        print "Feeds not enabled"
示例#2
0
 def handle(self, *args, **options):
     for database_name in document_stores_to_process(args):
         print "Database %s" % database_name
         logger.info("Database %s" % database_name)
         manager = get_db_manager(database_name)
         try:
             SyncOnlyChangedViews().sync_view(manager)
         except Exception as e:
             logger.exception(e)
             traceback.print_exc(file=sys.stdout)
         print "Done."
 def handle(self, *args, **options):
     if settings.FEEDS_ENABLED:
         for database_name in document_stores_to_process(args):
             manager = get_feed_db_from_main_db_name(database_name)
             print("Database %s") % (manager.database.name, )
             print 'Deleting Feed DB...'
             _delete_db_and_remove_db_manager(manager)
             recreated_manager = get_feed_db_from_main_db_name(
                 database_name)
             print "Syncing Feed Views....."
             SyncOnlyChangedViews().sync_feed_views(recreated_manager)
         print "Feed database view sync done."
     else:
         print "Feeds not enabled"
    def handle(self, *args, **options):
        get_cache_manager().flush_all()
        for database_name in all_db_names():
            print("Database %s") % (database_name, )
            print 'Deleting...'
            manager = get_db_manager(database_name)
            _delete_db_and_remove_db_manager(manager)

        for database_name in document_stores_to_process(args):
            recreated_manager = get_db_manager(database_name)
            print "Syncing Views....."
            SyncOnlyChangedViews().sync_view(recreated_manager)
        print "Loading data....."
        load_data()
        print "Done."
示例#5
0
 def handle(self, *args, **options):
     print "Creating Dynamic Views for Reports within DW"
     for database_name in document_stores_to_process(args):
         dbm = get_db_manager(database_name)
         report_configs = dbm.database.view(
             "all_report_configs/all_report_configs")
         for report_config in report_configs:
             report_id = report_config.id
             report_config_doc = report_config.value
             config = get_report_config(dbm, report_id)
             if not report_config_doc.get('type', None):
                 print("Database %s") % database_name
                 print "Create Dynamic Views for %s" % report_config_doc.get(
                     'name', "")
                 filter_fields = [f['field'] for f in config.filters]
                 date_field = config.date_filter and [
                     strip_alias(config.date_filter['field'])
                 ] or []
                 indexes = distinct([
                     strip_alias(get_indexable_question(qn))
                     for qn in filter_fields
                 ])
                 questionnaire_ids = '"{0}"'.format('", "'.join([
                     questionnaire['id']
                     for questionnaire in config.questionnaires
                 ]))
                 dbm.create_view(
                     get_report_view_name(report_id,
                                          "_".join(indexes + date_field)),
                     _get_map_function(
                         questionnaire_ids,
                         _combined_view_key(
                             map(_form_key_for_couch_view,
                                 indexes + date_field))), "_count")
                 date_field and dbm.create_view(
                     get_report_view_name(report_id, date_field[0]),
                     _get_map_function(
                         questionnaire_ids,
                         _form_key_for_couch_view(date_field[0])), "_count")
     print "Done."