from ..connection import connect from .ensure_field_bounds_schema import ensure_field_bounds_schema def get_definition(slug, definition_id): ensure_field_bounds_schema(slug) conn = connect(slug) d = conn.execute("SELECT * FROM _definitions WHERE id = ?", (definition_id,)).fetchone() if not d: conn.close() return None fields = conn.execute( "SELECT * FROM _fields WHERE definition_id = ? ORDER BY position, id", (definition_id,) ).fetchall() conn.close() d = dict(d) d["fields"] = [dict(f) for f in fields] return d