示例#1
0
def get_tag_categories(ctx: rest.Context,
                       _params: Dict[str, str] = {}) -> rest.Response:
    auth.verify_privilege(ctx.user, "tag_categories:list")
    categories = tag_categories.get_all_categories()
    return {
        "results": [_serialize(ctx, category) for category in categories],
    }
 def get(self, ctx):
     auth.verify_privilege(ctx.user, 'tag_categories:list')
     categories = tag_categories.get_all_categories()
     return {
         'tagCategories': [
             _serialize_category(category) for category in categories],
     }
示例#3
0
def export_to_json():
    output = {
        'tags': [],
        'categories': [],
    }
    all_tags = db.session \
        .query(db.Tag) \
        .options(
            sqlalchemy.orm.joinedload('suggestions'),
            sqlalchemy.orm.joinedload('implications')) \
        .all()
    for tag in all_tags:
        item = {
            'names': [tag_name.name for tag_name in tag.names],
            'usages': tag.post_count,
            'category': tag.category.name,
        }
        if len(tag.suggestions):
            item['suggestions'] = \
                [rel.names[0].name for rel in tag.suggestions]
        if len(tag.implications):
            item['implications'] = \
                [rel.names[0].name for rel in tag.implications]
        output['tags'].append(item)
    for category in tag_categories.get_all_categories():
        output['categories'].append({
            'name': category.name,
            'color': category.color,
        })
    export_path = os.path.join(config.config['data_dir'], 'tags.json')
    with open(export_path, 'w') as handle:
        handle.write(json.dumps(output, separators=(',', ':')))
示例#4
0
def get_tag_categories(
        ctx: rest.Context, _params: Dict[str, str] = {}) -> rest.Response:
    auth.verify_privilege(ctx.user, 'tag_categories:list')
    categories = tag_categories.get_all_categories()
    return {
        'results': [_serialize(ctx, category) for category in categories],
    }
示例#5
0
 def get(self, ctx):
     auth.verify_privilege(ctx.user, 'tag_categories:list')
     categories = tag_categories.get_all_categories()
     return {
         'results': [
             tag_categories.serialize_category(category) \
                 for category in categories],
     }
示例#6
0
def test_get_all_categories(tag_category_factory):
    category1 = tag_category_factory(name="cat1")
    category2 = tag_category_factory(name="cat2")
    db.session.add_all([category2, category1])
    db.session.flush()
    assert tag_categories.get_all_categories() == [category1, category2]
示例#7
0
def test_get_all_categories(tag_category_factory):
    category1 = tag_category_factory(name='cat1')
    category2 = tag_category_factory(name='cat2')
    db.session.add_all([category1, category2])
    db.session.flush()
    assert tag_categories.get_all_categories() == [category1, category2]
示例#8
0
def get_tag_categories(ctx, _params=None):
    auth.verify_privilege(ctx.user, 'tag_categories:list')
    categories = tag_categories.get_all_categories()
    return {
        'results': [_serialize(ctx, category) for category in categories],
    }