Según entiendo de this database design question, se debe utilizar campos anulables con moderación y tomar una decisión pesó cada vez de si sería mejor volver a pensar el diseño de datos en su lugar.NULL TextField o cadena vacía en el modelo Django?
Pero digamos que en algún caso particular, la resolución es para permitir un campo de texto que contiene un valor vacío. Por ejemplo, hay user
mesa y hay short_bio
columna que está representado por el campo de texto en Django y no es obligatorio. No tiene sentido crear una tabla user_bio
por separado, ¿verdad?
Ahora la pregunta es si el valor vacío es una cadena vacía o un marcador nulo? ¿Cuáles son los pros y los contras de cada opción? ¿Hay alguna información específica sobre cómo funciona Django con la base de datos que puede hacer la diferencia?
Cabe señalar que django-lint informa actualmente en casos Charfield y TextField con null=True
.
Por el contrario, ‘almacenar una cadena vacía para un campo se deja en blanco se ve como una mala idea’ por some developers.
Gracias por el razonamiento y la mención de la convención de Django, que no se dio cuenta de docs. – Tony