Null-Wert in der Spalte "name" verletzt not-null-Einschränkung beim hinzufügen von neuen Elements im django admin

Habe ich Hinzugefügt ein neues Modell auf mein admin. Dies ist mein models.py:

class EngineeringToolAttributeType(models.Model):
    name = models.CharField(max_length=50)
    description = models.CharField(max_length=255, blank=True, null=True)
    api_url = models.CharField(max_length=255, blank=True, null=True)
    api_field = models.CharField(max_length=50, blank=True, null=True)
    active = models.BooleanField(default=True)

    def __str__(self):
        return self.name

Und die admin.py:

from extras.models import EngineeringToolAttributeType
from django.contrib import admin

class EngineeringToolAttributeTypeAdmin(admin.ModelAdmin):
    fields = ['name', 'description', 'api_url', 'api_field', 'active']
    list_display = ('name', 'description', 'api_url', 'api_field', 'active')

admin.site.register(EngineeringToolAttributeType, EngineeringToolAttributeTypeAdmin)

Wenn ich versuche hinzuzufügen (klicken Sie auf die Schaltfläche hinzufügen, über die admin), bekomme ich diesen Fehler:

Internal Server Error: /website/admin/extras/engineeringtoolattributetype/add/

IntegrityError at /admin/extras/engineeringtoolattributetype/add/
null value in column "name" violates not-null constraint

Dies ist noch nie zuvor passiert. Ich weiß, der name ist nicht zulässig Null, aber ich bin immer noch ein Datensatz Hinzugefügt. Wie ist das möglich?

  • Drucken Sie den Namen des Datensatzes, die Sie hinzufügen möchten.
  • Nur um sicher zu gehen, das ist vor Sie das Formular abschicken? Nur Klick auf die Schaltfläche "Hinzufügen", und so sollte Sie auf das Formular.
  • nicht versuchen, um jeden Datensatz noch. Ich klickte auf die Schaltfläche "Hinzufügen", um mich an die form.
  • in der Tat!!! bevor ich das Formular abschicken. Total komisch!
  • Hast du versucht, die Migration für einmal?
  • ja, es sieht so aus das problem mit den Feldern "name" genannt, denn ich habe das gleiche problem mit anderen Modellen. Mehr eine PostgreSQL-ich denke,
  • Ich habe gerade lief der code in meinem Rechner und es funktioniert perfekt. Ich bin auch mit PostgreSQL. Was ist die version von django?
  • hast du das überschreiben der admin-Formular-Ansichten in irgendeiner Weise?
  • 1.10
  • nicht bei allen
  • Bitte geben Sie den vollständigen traceback. Machen Sie den gleichen Fehler, wenn Sie entfernen Sie Ihre Modell ist __str__ Methode?

InformationsquelleAutor Ruben | 2017-06-27
Schreibe einen Kommentar