@classmethod
def get_pks(cls, id):
    """
            Convert the id string to a pk dict
        """
    values = str(id).split(cls.delimiter)
    result = dict()
    for pk_col, val in zip(cls.columns, values):
        if not val:
            if pk_col.type.python_type == int:
                val = 0
        try:
            col_name = str(pk_col.name)
            result[col_name] = pk_col.type.python_type(val)
        except (ValueError, TypeError):
            if pk_col.default:
                result[col_name] = pk_col.default
            else:
                result[col_name] = ''
        except:
            result[col_name] = ''
    return result
