Example #1
0
 def convert(arg_name, arg_type, arg_value):
     converted_value = arg_value
     try:
         if arg_type is file:
             if type(arg_value) is not file:
                 if hasattr(arg_value, 'file'):
                     converted_value = arg_value.file
                 else:
                     raise ValueError("Value must be an open file object, or uploaded file.")
         if arg_type == 'filedict':
             if type(arg_value) is not dict:
                 if hasattr(arg_value, 'file'):
                     converted_value = {'file': arg_value.file}
                 else:
                     raise ValueError("Value must be an open file object, or uploaded file.")
                 
                 if hasattr(arg_value, 'filename'):
                     converted_value['filename'] = arg_value.filename
         elif arg_type is int:
             converted_value = int(arg_value)
         elif arg_type is float:
             converted_value = float(arg_value)
         elif arg_type is datetime:
             converted_value = convert_date(arg_value)
         elif type(arg_type) is declarative.DeclarativeMeta:
             if type(type(arg_value)) is not declarative.DeclarativeMeta:
                 
                 is_int = True
                 try:
                     arg_value = int(arg_value)
                 except ValueError, e:
                     is_int = False
                 
                 if not is_int and hasattr(arg_type, 'eid'):
                     field = arg_type.eid
                     if arg_value is str:
                         arg_value = arg_value.decode('utf-8')
                     else:
                         arg_value = unicode(arg_value)
                 else:
                     field = arg_type.id
                     arg_value = int(arg_value)
                 converted_value = Session.query(arg_type).filter(field == arg_value).first() 
         elif arg_type is str:
             if type(arg_value) is unicode:
                 converted_value = arg_value.encode('utf-8')
             else:
                 converted_value = str(arg_value)
Example #2
0
 def _to_python(self, value, state):
     
     try:
         value = convert_date(value)
     except (ValueError,), e:
         raise fv.Invalid(e.args[0], value, state)
Example #3
0
    def _to_python(self, value, state):

        try:
            value = convert_date(value)
        except (ValueError, ), e:
            raise fv.Invalid(e.args[0], value, state)