Login

StringField: CharField with no max_length for Postgres

Author:
cdcarter
Posted:
May 5, 2019
Language:
Python
Version:
2.1
Score:
0 (after 0 ratings)

Django's CharField requires a max_length, and TextField displays a multi- line widget, but in Postgres there's no reason to add an arbitrary max thanks to the varlena storage format. So this is a TextField that displays as a single line instead of a multiline TextArea.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
class StringField(models.TextField):
    """ A simple unlimited length string field. 
    
    Django's CharField requires a max_length, and TextField displays a multi-
    line widget, but in Postgres there's no reason to add an arbitrary max
    thanks to the `varlena` storage format. So this is a TextField that 
    displays as a single line instead of a multiline TextArea.

    That's all."""

    def formfield(self, **kwargs):
        # skip TextField's override of models.Field.formfield
        return models.Field.formfield(self, **kwargs)

More like this

  1. "Magic Link" Management Command by webology 3 months ago
  2. Closest ORM models to a latitude/longitude point by simonw 3 months ago
  3. Log the time taken to execute each DB query by kennyx46 3 months ago
  4. django database snippet by ItsRLuo 3 months, 1 week ago
  5. Serialize a model instance by chriswedgwood 4 months ago

Comments

Please login first before commenting.