def _get_query(slug, name): network = _get_network(slug) query = Query.by_name(network, name) if query is None: raise NotFound('No such entity: %s' % name) require.query.read(network, query) return network, query
def create(slug): """ Create a new query. """ network = _get_network(slug) require.query.create(network) data = request_content(request) context = ValidationContext(network=network) data = validate_query(dict(data.items()), context) query = Query.create(network, data) db.session.commit() url = url_for('.get', slug=network.slug, name=query.name) return jsonify(query, status=201, headers={'location': url})
def _check(value): if context.query and context.query.name == value: return True if Query.by_name(context.network, value) is not None: return "This network name is already in use, please choose another." return True
def index(slug): """ List all available queries. """ network = _get_network(slug) require.query.list(network) return jsonify({'results': Query.all(network)})