Bitte verzeihen Sie mir im Voraus - ich weiß, es gibt einige Fragen dazu - aber ich habe wirklich keine Lösung gefunden.Django - nicht speichern in PostGresql Datenbank
Ich arbeite an Django und möchte eine Postgresql-Tabelle füllen, die dank eines von mir erstellten Modells erstellt wurde.
Ich habe auch mein Formular, meine HTML-Seite (Vorlage) und meine Ansicht erstellt. Ich habe keine Fehlermeldung, aber nichts ist in der Datenbank erstellt.
Hier ist meine model.py
class ModForm1(models.Model) :
utilisateur = models.CharField(max_length=100)
description = models.CharField(max_length=500)
date = models.DateTimeField(auto_now_add=True, auto_now=False,
verbose_name="Date de parution")
def __unicode__(self):
return "{0} {1} {2} {3} ".format(self, self.utilisateur, self.description, self.date)
Hier mein form.py
class ModForm1Form(ModelForm):
class Meta:
model = ModForm1
fields = '__all__'
meine Vorlage Hier ist:
<div class="container">
<div style="width:30%">
<form role="form" action="." method="post">
<div class="col-xs-12">
<legend><i class="icon-group"></i> Authentification</legend>
{% csrf_token %}
<div class="form-group">
<label for="example-text-input">Utilisateur</label> {{ form.utilisateur }}
</div>
<div class="form-group">
<label for="example-text-input">Description</label> {{ form.description }}
</div>
<input class="btn btn-primary" type="submit" value="submit" />
</form>
</div>
</div>
Und hier ist mein views.py
def addentry(request):
form = ModForm1Form(request.POST)
# if this is a POST request we need to process the form data
if request.method == 'POST':
if form.is_valid():
# process the data in form.cleaned_data as required
# ...
# redirect to a new URL:
form.save()
return HttpResponseRedirect('.')
#messages.error(request, "Error")
# if a GET (or any other method) we'll create a blank form
else:
messages.error(request, "Error")
return render(request, 'addentry.html', {'form': form})
Ich lese fast alle Fragen in StackOverflow, aber ich bin wirklich fest. Ich finde nicht wirklich, warum nichts in meine Datenbank geschrieben wurde.
Könnten Sie bitte ein Auge und mir helfen?
Danke!
Julien
EDIT - Die Datenbank config in setting.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'django',
# The following settings are not used with sqlite3:
'USER': 'julien',
'PASSWORD': '***',
'HOST': 'localhost', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
'PORT': '5432',
}
}
Können Sie Ihre Datenbankkonfiguration (settings.py) hinzufügen? Und Fehlermeldungen? –
Keine Fehlermeldungen leider .. Ich habe die Datenbankkonfiguration in meinem ersten Beitrag – Julien
[Fügen Sie die Formularfehler] (https://docs.djangoproject.com/en/1.11/topics/forms/#rendering-fields-manual) in die Vorlage, damit Sie sehen können, was das Problem ist. Sie können auch debuggen, indem Sie 'form.errors' in der Ansicht überprüfen. – Alasdair