/ / Datenbankfehler django - python, Datenbank, django, Klasse

Datenbankfehler django - python, Datenbank, django, Klasse

DatabaseError unter / admin / delmarva / event / keine solche Spalte: delmarva_event.eventdate

Ich habe eine Klasse in meinem erstellt models.py Datei:

from django.db import models
from django.contrib.auth.models import User

class Event(models.Model):
eventname = models.CharField(max_length = 100)
eventdate = models.DateField()
eventtime = models.TimeField()
address = models.CharField(max_length = 200)
user = models.ForeignKey(User)

def __unicode__(self):
return self.eventname

und jetzt, wenn ich versuche, meine Termine in meinem Admin zu sehenoder meine main_page gibt mir den fehler, dass es kein ereignisdatum gibt. Ich habe versucht, die db erneut zu synchronisieren, aber nichts hat sich geändert. Außerdem hashtaged ich EventDate heraus, um zu sehen, wenn ich einen anderen Fehler bekomme, und dann stellt es das fest delmarva_event.eventtime existiert auch nicht. I Es ist seltsam, weil es kein Problem mit Ereignisname hat. Irgendwelche Vorschläge würden sehr geschätzt werden!

Antworten:

3 für die Antwort № 1

Wenn Sie die Modelle ändern, syncdb funktioniert nicht. Sie benötigen ein Drittanbieter-Tool namens Süd welches diese "Migrationen" für Sie verwaltet.

Wenn nicht, würde die andere - NICHT BEVORZUGTE Methode sein, die Tabelle zu löschen und neu zu erstellen


1 für die Antwort № 2

Das Problem ist wahrscheinlich, dass Sie syncdb undDann wurde die Spalte eventdate hinzugefügt. Syncdb erstellt Tabellen nur einmal und aktualisiert sie nicht weiter. Sie müssen die South App verwenden und Migrationen vornehmen oder die Tabelle löschen und dann syncdb erneut verwenden.


0 für die Antwort № 3

Eine schnelle Lösung besteht darin, die Datenbank zu entfernen und dann syncdb erneut auszuführen. Es sollte sich im selben Verzeichnis befinden wie Ihre manage.py-Datei.