def create(self, data, app): # .. error_data = {} record = dict(urlparse.parse_qsl(utils.uri_to_iri(data[0]))) # .. phone = record.get('phone', None) if phone: phone = phone.replace(' ', '') record['phone'] = phone validator = validators.Phone(phone) validator.check('phone', error_data) # .. email = record.get('email', None) if email: validator = validators.Email(email) validator.check('email', error_data) # .. if error_data: raise errors.FormError(data=error_data) # .. cursor = app.dbpool.cursor() try: feedback = Feedback(cursor, **record) feedback.create() feedback = feedback.as_dict() record = { 'feedback_id': feedback['id'], 'feedback_firstname': feedback['firstname'], 'feedback_lastname': feedback['lastname'], 'feedback_midname': feedback.get('midname', ''), 'feedback_phone': feedback.get('phone', ''), 'feedback_email': feedback.get('email', ''), 'feedback_comment': feedback['comment'], 'city_id': feedback.get('city_id', ''), 'city_name': record.get('city', ''), 'region_id': record.get('region_id', ''), 'region_name': record.get('region', ''), } except Exception as e: raise e app.dbpool.commit() # .. return { 'message': 'Комментарий успешно создан', 'record': record, }