Bilder gespeichert werden können, nicht in db.I gespeichert schrieb in views.pyBilder können nicht in db
@csrf_exempt
def upload_save(request):
form = UserImageForm(request.POST, request.FILES)
if request.method == "POST" and form.is_valid():
data = form.save(commit=False)
data.user = request.user
data.save()
return render(request, 'registration/photo.html')
else:
form = UserImageForm()
return render(request, 'registration/profile.html', {'form': form})
in models.py
class ImageAndUser(models.Model):
user = models.ForeignKey("auth.User", verbose_name="imageforegin",on_delete=models.CASCADE)
image1 = models.ImageField(upload_to='images', null=True, blank=True,)
image2 = models.ImageField(upload_to='images/', null=True, blank=True,)
image3 = models.ImageField(upload_to='images/', null=True, blank=True,)
in forms.py
class UserImageForm(forms.ModelForm):
image = forms.ImageField()
class Meta:
model = ImageAndUser
fields = ('image',)
im Profil.html
<form action="/accounts/upload_save/" method="POST" enctype="multipart/form-data" role="form">
{% csrf_token %}
<label class="input-group-btn">
<span class="file_select btn-lg">
File Select1
<input id="file1" type="file" name="image" accept="image/*" style="display: none">
</span>
</label>
<input type="text" class="form-control" readonly="">
<label class="input-group-btn">
<span class="btn-lg file_select">
File Select2
<input id="file2" type="file" name="image2" accept="image/*" style="display: none">
</span>
</label>
<input type="text" class="form-control" readonly="">
<label class="input-group-btn">
<span class="btn-lg file_select">
File Select3
<input id="file3" type="file" name="image3" accept="image/*" style="display: none">
</span>
</label>
<input type="text" class="form-control" readonly="">
<input type="hidden" value="{{ p_id }}" name="p_id" class="form-control">
<input id="send" type="submit" value="SEND" class="form-control">
</form>
Wenn ich 3 Bilder von HTML und SEND-Taste hochgeladen, kein Bild wurde nicht gespeichert.Aber nach dem Senden SEND-Taste, Foto.html angezeigt wird, so Programm war erfolgreich.Ich kann nicht verstehen, warum 3 Bilder nicht gespeichert werden können.Ich schrieb Daten .save(). Wie soll ich das beheben? Was ist falsch in meinen Codes?
thx ur answer.I ur Codes geschrieben, aber wenn ich SENDEN-Taste setzen, können keine Bilder uploaded.always in views.py Programm geht in 'else: form = UserImageForm() render (request,' registration/profile.html ', {' form ': form}) '.Wie soll ich das beheben? – user7676799
@ user7676799 fügen Formularen Fehler zu HTML, um zu überprüfen, was schief geht: '{{form.non_field_errors}}' '{{form.image1.errors}}' '{{form.image2.errors}}' {{form .image3.errors}} ' – neverwalkaloner
@ user7676799 Sie haben' name = "image" 'in html, aber im Modell gibt es' image1' Feld. Versuchen Sie, den Namen in image1 'name =" image "' zu ändern – neverwalkaloner