Ticket #231: maxlength_for_filefields.diff

File maxlength_for_filefields.diff, 5.3 KB (added by mssnlayam@…, 9 years ago)

Patch

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

     
    582582class FileField(Field):
    583583    def __init__(self, verbose_name=None, name=None, upload_to='', **kwargs):
    584584        self.upload_to = upload_to
     585        if 'maxlength' not in kwargs:
     586            kwargs['maxlength'] = 100
    585587        Field.__init__(self, verbose_name, name, **kwargs)
    586588
    587589    def get_manipulator_fields(self, opts, manipulator, change, name_prefix='', rel=False, follow=True):
     
    663665class FilePathField(Field):
    664666    def __init__(self, verbose_name=None, name=None, path='', match=None, recursive=False, **kwargs):
    665667        self.path, self.match, self.recursive = path, match, recursive
     668        if 'maxlength' not in kwargs:
     669            kwargs['maxlength'] = 100
    666670        Field.__init__(self, verbose_name, name, **kwargs)
    667671
    668672    def get_manipulator_field_objs(self):
  • django/db/backends/ado_mssql/creation.py

     
    55    'CommaSeparatedIntegerField': 'varchar(%(maxlength)s)',
    66    'DateField':         'smalldatetime',
    77    'DateTimeField':     'smalldatetime',
    8     'FileField':         'varchar(100)',
    9     'FilePathField':     'varchar(100)',
     8    'FileField':         'varchar(%(maxlength)s)',
     9    'FilePathField':     'varchar(%(maxlength)s)',
    1010    'FloatField':        'numeric(%(max_digits)s, %(decimal_places)s)',
    11     'ImageField':        'varchar(100)',
     11    'ImageField':        'varchar(%(maxlength)s)',
    1212    'IntegerField':      'int',
    1313    'IPAddressField':    'char(15)',
    1414    'ManyToManyField':   None,
  • django/db/backends/postgresql/creation.py

     
    99    'CommaSeparatedIntegerField': 'varchar(%(maxlength)s)',
    1010    'DateField':         'date',
    1111    'DateTimeField':     'timestamp with time zone',
    12     'FileField':         'varchar(100)',
    13     'FilePathField':     'varchar(100)',
     12    'FileField':         'varchar(%(maxlength)s)',
     13    'FilePathField':     'varchar(%(maxlength)s)',
    1414    'FloatField':        'numeric(%(max_digits)s, %(decimal_places)s)',
    15     'ImageField':        'varchar(100)',
     15    'ImageField':        'varchar(%(maxlength)s)',
    1616    'IntegerField':      'integer',
    1717    'IPAddressField':    'inet',
    1818    'ManyToManyField':   None,
  • django/db/backends/sqlite3/creation.py

     
    88    'CommaSeparatedIntegerField':   'varchar(%(maxlength)s)',
    99    'DateField':                    'date',
    1010    'DateTimeField':                'datetime',
    11     'FileField':                    'varchar(100)',
    12     'FilePathField':                'varchar(100)',
     11    'FileField':                    'varchar(%(maxlength)s)',
     12    'FilePathField':                'varchar(%(maxlength)s)',
    1313    'FloatField':                   'numeric(%(max_digits)s, %(decimal_places)s)',
    14     'ImageField':                   'varchar(100)',
     14    'ImageField':                   'varchar(%(maxlength)s)',
    1515    'IntegerField':                 'integer',
    1616    'IPAddressField':               'char(15)',
    1717    'ManyToManyField':              None,
  • django/db/backends/mysql/creation.py

     
    99    'CommaSeparatedIntegerField': 'varchar(%(maxlength)s)',
    1010    'DateField':         'date',
    1111    'DateTimeField':     'datetime',
    12     'FileField':         'varchar(100)',
    13     'FilePathField':     'varchar(100)',
     12    'FileField':         'varchar(%(maxlength)s)',
     13    'FilePathField':     'varchar(%(maxlength)s)',
    1414    'FloatField':        'numeric(%(max_digits)s, %(decimal_places)s)',
    15     'ImageField':        'varchar(100)',
     15    'ImageField':        'varchar(%(maxlength)s)',
    1616    'IntegerField':      'integer',
    1717    'IPAddressField':    'char(15)',
    1818    'ManyToManyField':   None,
  • django/db/backends/oracle/creation.py

     
    55    'CommaSeparatedIntegerField': 'varchar2(%(maxlength)s)',
    66    'DateField':         'date',
    77    'DateTimeField':     'date',
    8     'FileField':         'varchar2(100)',
    9     'FilePathField':     'varchar2(100)',
     8    'FileField':         'varchar2(%(maxlength)s)',
     9    'FilePathField':     'varchar2(%(maxlength)s)',
    1010    'FloatField':        'number(%(max_digits)s, %(decimal_places)s)',
    11     'ImageField':        'varchar2(100)',
     11    'ImageField':        'varchar2(%(maxlength)s)',
    1212    'IntegerField':      'integer',
    1313    'IPAddressField':    'char(15)',
    1414    'ManyToManyField':   None,
Back to Top