async def to_json(self, result): json = await super(MaterialCategorySerializer, self).to_json(result) async with self.context['request'].app['db'].acquire() as conn: query = Category.select().where(Category.c.id == json['category']) result = await conn.execute(query) serializer = CategorySerializer() category = await serializer.to_json(result) json = category return json
async def search_categories(request): async with request.app['db'].acquire() as conn: text = request.query.get('text') if text is None: raise ValidationError(dict(text='This query parameters is required')) query = Category.select().where(Category.c.name.like('%{}%'.format(text))) result = await conn.execute(query) serializer = CategorySerializer(many=True) data = await serializer.to_json(result) return web.json_response(data)