50
50
def add_exercise(self, req, identifier, name, description, partial, solution, include, num_rows):
51
51
if not VALID_URL_NAME.match(identifier):
54
"followed by any number of alphanumerics, ., +, - or _.")
56
57
if req.store.find(Exercise, id=unicode(identifier)).one():
57
58
raise BadRequest("An exercise with that URL name already exists.")