theme - django tutorial
Permitir nulo en clave externa al usuario. Django (3)
club_vacancy.user_id may not be NULL
Se parece mucho a un error de su base de datos, en lugar de a Django.
Parece más probable que haya agregado null=True
después de ejecutar manage.py syncdb
. Tendrá que modificar el esquema de su base de datos para permitir valores nulos en esa columna.
Tengo este modelo
class Vacancy(models.Model):
user = models.ForeignKey(User, null=True, blank=True, default = None)
name = models.CharField(max_length=64)
Cuando en admin intento crear una vacante sin un usuario. Y arroja un error "club_vacancy.user_id puede no ser NULL". ¿Estoy haciendo algo mal?
Aparte de South, otra opción es usar django evolution para cambios de esquema.
http://code.google.com/p/django-evolution/
Instálalo antes de hacer cambios db. Entonces corre
python manage.py evolve --hint --execute
Asegúrese de que si agrega un nuevo campo, permita nulos ( null=True
) o de lo contrario, evolucionar le dará un mensaje de error.
necesita restablecer la tabla de la base de datos (ya que solo syncdb no actualiza los campos que ya se crearon con null = False)
./manage.py resetea tu_app
O si hay algunos datos que no desea perder, use los comandos SQL para eliminar el indicador NOT NULL