Django

Code

Changeset 6378

Show
Ignore:
Timestamp:
09/19/07 18:33:57 (1 year ago)
Author:
jacob
Message:

Fixed #231: all fields that should take max_length now do. Thanks, Don Spaulding.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/AUTHORS

    r6375 r6378  
    277277    Leo Soto <leo.soto@gmail.com> 
    278278    Wiliam Alves de Souza <wiliamsouza83@gmail.com> 
     279    Don Spaulding <donspauldingii@gmail.com> 
    279280    Bjørn Stabell <bjorn@exoweb.net> 
    280281    Georgi Stanojevski <glisha@gmail.com> 
  • django/trunk/django/db/backends/ado_mssql/creation.py

    r5803 r6378  
    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)', 
  • django/trunk/django/db/backends/mysql/creation.py

    r5803 r6378  
    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)', 
  • django/trunk/django/db/backends/mysql_old/creation.py

    r5876 r6378  
    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)', 
  • django/trunk/django/db/backends/oracle/creation.py

    r5981 r6378  
    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)', 
     
    2929    'TextField':                    'NCLOB', 
    3030    'TimeField':                    'TIMESTAMP', 
    31     'URLField':                     'VARCHAR2(200)', 
     31    'URLField':                     'VARCHAR2(%(max_length)s)', 
    3232    'USStateField':                 'CHAR(2)', 
    3333} 
  • django/trunk/django/db/backends/postgresql/creation.py

    r5803 r6378  
    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', 
  • django/trunk/django/db/backends/sqlite3/creation.py

    r5803 r6378  
    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)', 
  • django/trunk/django/db/models/fields/__init__.py

    r6357 r6378  
    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 
     
    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 
     
    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 
  • django/trunk/django/oldforms/__init__.py

    r5865 r6378  
    448448 
    449449class HiddenField(FormField): 
    450     def __init__(self, field_name, is_required=False, validator_list=None): 
     450    def __init__(self, field_name, is_required=False, validator_list=None, max_length=None): 
    451451        if validator_list is None: validator_list = [] 
    452452        self.field_name, self.is_required = field_name, is_required 
     
    675675 
    676676class FileUploadField(FormField): 
    677     def __init__(self, field_name, is_required=False, validator_list=None): 
     677    def __init__(self, field_name, is_required=False, validator_list=None, max_length=None): 
    678678        if validator_list is None: validator_list = [] 
    679679        self.field_name, self.is_required = field_name, is_required 
     
    947947class FilePathField(SelectField): 
    948948    "A SelectField whose choices are the files in a given directory." 
    949     def __init__(self, field_name, path, match=None, recursive=False, is_required=False, validator_list=None): 
     949    def __init__(self, field_name, path, match=None, recursive=False, is_required=False, validator_list=None, max_length=None): 
    950950        import os 
    951951        from django.db.models import BLANK_CHOICE_DASH 
  • django/trunk/docs/model-api.txt

    r6346 r6378  
    294294.. _`strftime formatting`: http://docs.python.org/lib/module-time.html#l2h-1941 
    295295 
     296**New in development version:** 
     297 
     298By default, file fields are created as ``varchar(100)`` database fields. Like 
     299other fields, you can change the maximum length using the ``max_length`` 
     300argument. 
     301 
    296302``FilePathField`` 
    297303~~~~~~~~~~~~~~~~~ 
     
    331337``bar.gif``). 
    332338 
     339**New in development version:**  
     340 
     341By default, file fields are created as ``varchar(100)`` database fields. Like 
     342other fields, you can change the maximum length using the ``max_length`` 
     343argument. 
     344 
    333345``FloatField`` 
    334346~~~~~~~~~~~~~~ 
     
    361373.. _Python Imaging Library: http://www.pythonware.com/products/pil/ 
    362374.. _elsewhere: ../db-api/#get-foo-height-and-get-foo-width 
     375 
     376**New in development version:**  
     377 
     378By default, file fields are created as ``varchar(100)`` database fields. Like 
     379other fields, you can change the maximum length using the ``max_length`` 
     380argument. 
    363381 
    364382``IntegerField``