Exemple #1
0
 def make_model_name(self, table, snake_case=True):
     if snake_case:
         table = make_snake_case(table)
     model = re.sub('[^\w]+', '', table)
     model_name = ''.join(sub.title() for sub in model.split('_'))
     if not model_name[0].isalpha():
         model_name = 'T' + model_name
     return model_name
Exemple #2
0
 def make_model_name(self, table, snake_case=True):
     if snake_case:
         table = make_snake_case(table)
     model = re.sub('[^\w]+', '', table)
     model_name = ''.join(sub.title() for sub in model.split('_'))
     if not model_name[0].isalpha():
         model_name = 'T' + model_name
     return model_name
Exemple #3
0
    def make_column_name(self, column, is_foreign_key=False, snake_case=True):
        column = column.strip()
        if snake_case:
            column = make_snake_case(column)
        column = column.lower()
        if is_foreign_key:
            # Strip "_id" from foreign keys, unless the foreign-key happens to
            # be named "_id", in which case the name is retained.
            column = re.sub('_id$', '', column) or column

        # Remove characters that are invalid for Python identifiers.
        column = re.sub('[^\w]+', '_', column)
        if column in RESERVED_WORDS:
            column += '_'
        if len(column) and column[0].isdigit():
            column = '_' + column
        return column
Exemple #4
0
    def make_column_name(self, column, is_foreign_key=False, snake_case=True):
        column = column.strip()
        if snake_case:
            column = make_snake_case(column)
        column = column.lower()
        if is_foreign_key:
            # Strip "_id" from foreign keys, unless the foreign-key happens to
            # be named "_id", in which case the name is retained.
            column = re.sub('_id$', '', column) or column

        # Remove characters that are invalid for Python identifiers.
        column = re.sub('[^\w]+', '_', column)
        if column in RESERVED_WORDS:
            column += '_'
        if len(column) and column[0].isdigit():
            column = '_' + column
        return column
Exemple #5
0
def table_function(model_class: peewee.Model) -> str:
    """Generate table name dynamically.

    The function strips ``Model`` from the class name and
    calls :func:`peewee.make_snake_case` to generate a
    proper table name.

    Args:
        model_class: Data model class.

    Returns:
        Generated table name.

    """
    name: str = model_class.__name__
    if name.endswith('Model'):
        name = name[:-5]  # strip ``Model`` suffix
    return peewee.make_snake_case(name)
Exemple #6
0
def prefixed_snake_case(prefix, cls):
    return prefix + peewee.make_snake_case(cls.__name__)
Exemple #7
0
def create_table_name(model):
    snake = make_snake_case(model.__name__)
    pluralized = snake + "s"
    return pluralized