def create_views_for_app(self, app_config):
        import os
        file_directory = app_config.path + "/couchbase_views/"

        try:
            views = {}
            for filename in os.listdir(file_directory):
                if filename.endswith("_reduce.js"):
                    continue

                if filename.endswith(".js"):
                    f = open(file_directory + '/' + filename, 'r')
                    # remove extension
                    view_name = filename[:-3]
                    view_content = f.read()
                    views[view_name] = {"map": view_content}

                    try:
                        reduce_filename = view_name + '_reduce.js'
                        reduce_file = open(file_directory + '/' + reduce_filename, 'r')
                        views[view_name]["reduce"] = reduce_file.read()
                    except:
                        pass

            if views:
                connection().design_create(app_config.label, {"views": views})
                connection().design_publish(app_config.label)

                # print 'created %d views for %s: %s' % (len(views), app_config.label, views.keys())
        except:
            pass
Example #2
0
    def create_views_for_app(self, app_config):
        import os
        file_directory = app_config.path + "/couchbase_views/"

        try:
            views = {}
            for filename in os.listdir(file_directory):
                if filename.endswith("_reduce.js"):
                    continue

                if filename.endswith(".js"):
                    f = open(file_directory + '/' + filename, 'r')
                    # remove extension
                    view_name = filename[:-3]
                    view_content = f.read()
                    views[view_name] = {"map": view_content}

                    try:
                        reduce_filename = view_name + '_reduce.js'
                        reduce_file = open(
                            file_directory + '/' + reduce_filename, 'r')
                        views[view_name]["reduce"] = reduce_file.read()
                    except:
                        pass

            if views:
                connection().design_create(app_config.label, {"views": views})
                connection().design_publish(app_config.label)

                # print 'created %d views for %s: %s' % (len(views), app_config.label, views.keys())
        except:
            pass
Example #3
0
def query_view(view_name, query_key, query=None):
    design, v = parse_view_name(view_name)
    query = query or Query(key=query_key, stale=get_stale())
    result = View(connection(), design, v, query=query)
    result_keys = [x.docid for x in result]
    return result_keys
Example #4
0
def query_view(view_name, query_key, query=None):
    query = query or Query(key=query_key, stale=get_stale())
    result = View(connection(), settings.COUCHBASE_DESIGN, view_name, query=query)
    result_keys = [x.docid for x in result if 'sync' not in x.docid]
    return result_keys
Example #5
0
def query_view(view_name, query_key, query=None):
    design, v = parse_view_name(view_name)
    query = query or Query(key=query_key, stale=get_stale())
    result = View(connection(), design, v, query=query)
    result_keys = [x.docid for x in result]
    return result_keys