Ticket #231: max_length_cleanups.diff

File max_length_cleanups.diff, 6.8 KB (added by donspaulding, 8 years ago)

For posterity.

  • django/db/models/fields/__init__.py

     
    686686
    687687class EmailField(CharField):
    688688    def __init__(self, *args, **kwargs):
    689         if 'max_length' not in kwargs:
    690             kwargs['max_length'] = 75
     689        kwargs['max_length'] = kwargs.get('max_length', 75)
    691690        CharField.__init__(self, *args, **kwargs)
    692691
    693692    def get_internal_type(self):
     
    707706class FileField(Field):
    708707    def __init__(self, verbose_name=None, name=None, upload_to='', **kwargs):
    709708        self.upload_to = upload_to
     709        kwargs['max_length'] = kwargs.get('max_length', 100)       
    710710        Field.__init__(self, verbose_name, name, **kwargs)
    711711
    712712    def get_db_prep_save(self, value):
     
    808808class FilePathField(Field):
    809809    def __init__(self, verbose_name=None, name=None, path='', match=None, recursive=False, **kwargs):
    810810        self.path, self.match, self.recursive = path, match, recursive
     811        kwargs['max_length'] = kwargs.get('max_length', 100)
    811812        Field.__init__(self, verbose_name, name, **kwargs)
    812813
    813814    def get_manipulator_field_objs(self):
  • django/db/backends/ado_mssql/creation.py

     
    66    'DateField':         'smalldatetime',
    77    'DateTimeField':     'smalldatetime',
    88    'DecimalField':      'numeric(%(max_digits)s, %(decimal_places)s)',
    9     'FileField':         'varchar(100)',
    10     'FilePathField':     'varchar(100)',
     9    'FileField':         'varchar(%(max_length)s)',
     10    'FilePathField':     'varchar(%(max_length)s)',
    1111    'FloatField':        'double precision',
    12     'ImageField':        'varchar(100)',
     12    'ImageField':        'varchar(%(max_length)s)',
    1313    'IntegerField':      'int',
    1414    'IPAddressField':    'char(15)',
    1515    'NullBooleanField':  'bit',
  • django/db/backends/mysql_old/creation.py

     
    1010    'DateField':         'date',
    1111    'DateTimeField':     'datetime',
    1212    'DecimalField':      'numeric(%(max_digits)s, %(decimal_places)s)',
    13     'FileField':         'varchar(100)',
    14     'FilePathField':     'varchar(100)',
     13    'FileField':         'varchar(%(max_length)s)',
     14    'FilePathField':     'varchar(%(max_length)s)',
    1515    'FloatField':        'double precision',
    16     'ImageField':        'varchar(100)',
     16    'ImageField':        'varchar(%(max_length)s)',
    1717    'IntegerField':      'integer',
    1818    'IPAddressField':    'char(15)',
    1919    'NullBooleanField':  'bool',
  • django/db/backends/postgresql/creation.py

     
    1010    'DateField':         'date',
    1111    'DateTimeField':     'timestamp with time zone',
    1212    'DecimalField':      'numeric(%(max_digits)s, %(decimal_places)s)',
    13     'FileField':         'varchar(100)',
    14     'FilePathField':     'varchar(100)',
     13    'FileField':         'varchar(%(max_length)s)',
     14    'FilePathField':     'varchar(%(max_length)s)',
    1515    'FloatField':        'double precision',
    16     'ImageField':        'varchar(100)',
     16    'ImageField':        'varchar(%(max_length)s)',
    1717    'IntegerField':      'integer',
    1818    'IPAddressField':    'inet',
    1919    'NullBooleanField':  'boolean',
  • django/db/backends/sqlite3/creation.py

     
    99    'DateField':                    'date',
    1010    'DateTimeField':                'datetime',
    1111    'DecimalField':                 'decimal',
    12     'FileField':                    'varchar(100)',
    13     'FilePathField':                'varchar(100)',
     12    'FileField':                    'varchar(%(max_length)s)',
     13    'FilePathField':                'varchar(%(max_length)s)',
    1414    'FloatField':                   'real',
    15     'ImageField':                   'varchar(100)',
     15    'ImageField':                   'varchar(%(max_length)s)',
    1616    'IntegerField':                 'integer',
    1717    'IPAddressField':               'char(15)',
    1818    'NullBooleanField':             'bool',
  • django/db/backends/mysql/creation.py

     
    1010    'DateField':         'date',
    1111    'DateTimeField':     'datetime',
    1212    'DecimalField':      'numeric(%(max_digits)s, %(decimal_places)s)',
    13     'FileField':         'varchar(100)',
    14     'FilePathField':     'varchar(100)',
     13    'FileField':         'varchar(%(max_length)s)',
     14    'FilePathField':     'varchar(%(max_length)s)',
    1515    'FloatField':        'double precision',
    16     'ImageField':        'varchar(100)',
     16    'ImageField':        'varchar(%(max_length)s)',
    1717    'IntegerField':      'integer',
    1818    'IPAddressField':    'char(15)',
    1919    'NullBooleanField':  'bool',
  • django/db/backends/oracle/creation.py

     
    1313    'DateField':                    'DATE',
    1414    'DateTimeField':                'TIMESTAMP',
    1515    'DecimalField':                 'NUMBER(%(max_digits)s, %(decimal_places)s)',
    16     'FileField':                    'NVARCHAR2(100)',
    17     'FilePathField':                'NVARCHAR2(100)',
     16    'FileField':                    'NVARCHAR2(%(max_length)s)',
     17    'FilePathField':                'NVARCHAR2(%(max_length)s)',
    1818    'FloatField':                   'DOUBLE PRECISION',
    19     'ImageField':                   'NVARCHAR2(100)',
     19    'ImageField':                   'NVARCHAR2(%(max_length)s)',
    2020    'IntegerField':                 'NUMBER(11)',
    2121    'IPAddressField':               'VARCHAR2(15)',
    2222    'NullBooleanField':             'NUMBER(1) CHECK ((%(column)s IN (0,1)) OR (%(column)s IS NULL))',
     
    2828    'SmallIntegerField':            'NUMBER(11)',
    2929    'TextField':                    'NCLOB',
    3030    'TimeField':                    'TIMESTAMP',
    31     'URLField':                     'VARCHAR2(200)',
     31    'URLField':                     'VARCHAR2(%(max_length)s)',
    3232    'USStateField':                 'CHAR(2)',
    3333}
    3434
Back to Top