What is the max size of 'max_length' in Django?

This is my model:

class Position(models.Model):
    map = models.ForeignKey(Map,primary_key=True)
    #members=models.CharField(max_length=200)
    LatLng = models.CharField(max_length=40000)
    infowindow = models.CharField(max_length=40000)

But it can't run. What is the max size of the max_length parameter?


That depends on the database backend. The Django DB Docs will tell you, that max_length=255 is guaranteed to work always.

If you need something of the amount you've specified in your question, I'd suggest to use a TextField.


Use TextField instead

infowindow = models.TextField()

It depends on the backend database. If you use MySQL 5.6 then there is a limit of 65,535. If you are using above that then it will allow for 1024 also but not beyond that.

class Demo(models.Model):
    max_test = models.CharField(max_length=1024)

I ran above on MySQL 5.7


It really depends on the database you use for the model. PostgreSQL, MySQL and so on have different settings and limits.

If you really need a long string or not sure how long the variable would be, always safe to just go with variable=models.TextField().