예제 #1
0
 def create_repo_field(self, repo_name):
     try:
         form_result = RepoFieldForm()().to_python(dict(request.POST))
         new_field = RepositoryField()
         new_field.repository = Repository.get_by_repo_name(repo_name)
         new_field.field_key = form_result['new_field_key']
         new_field.field_type = form_result['new_field_type']  # python type
         new_field.field_value = form_result[
             'new_field_value']  # set initial blank value
         new_field.field_desc = form_result['new_field_desc']
         new_field.field_label = form_result['new_field_label']
         Session().add(new_field)
         Session().commit()
     except Exception, e:
         log.error(traceback.format_exc())
         msg = _('An error occurred during creation of field')
         if isinstance(e, formencode.Invalid):
             msg += ". " + e.msg
         h.flash(msg, category='error')
예제 #2
0
 def create_repo_field(self, repo_name):
     try:
         form_result = RepoFieldForm()().to_python(dict(request.POST))
         new_field = RepositoryField()
         new_field.repository = Repository.get_by_repo_name(repo_name)
         new_field.field_key = form_result['new_field_key']
         new_field.field_type = form_result['new_field_type']  # python type
         new_field.field_value = form_result[
             'new_field_value']  # set initial blank value
         new_field.field_desc = form_result['new_field_desc']
         new_field.field_label = form_result['new_field_label']
         Session().add(new_field)
         Session().commit()
     except formencode.Invalid as e:
         h.flash(_('Field validation error: %s') % e.msg, category='error')
     except Exception as e:
         log.error(traceback.format_exc())
         h.flash(_('An error occurred during creation of field: %r') % e,
                 category='error')
     raise HTTPFound(location=url('edit_repo_fields', repo_name=repo_name))