/ / Appropriatezza di un campo di testo Django in un modello - django, database-design, django-models

Appropriatezza di un campo di testo di Django in un modello: django, database-design, modelli django

Ho un campo in un modello che voglio che gli utentisentono di poter scrivere una quantità arbitraria di testo. Django fornisce un CharField e un TextField nei modelli. Presumo che la differenza sia che uno di questi è un carattere (max_length) e l'altro è un varchar internamente.

Sono tentato di usare TextField, ma dal momento che non rispetta max_length, sono in qualche modo diffidente nei confronti di qualcuno che scarica dati in esso e DOSizza il mio server. Come devo gestirlo?

Grazie!

risposte:

7 per risposta № 1

I campi nel modello rappresentano solo il modo in cui i dati vengono archiviati nel database.

Puoi applicare molto facilmente la massima lunghezza nella forma che convaliderà l'input degli utenti. In questo modo.

class InputForm(forms.Form):
text = forms.CharField(max_length=16384, widget=forms.TextArea)
...

Ciò assicurerà che la lunghezza massima che l'utente può inserire correttamente sia 16k.