0
이미지에 저장할 수 없습니다 db.I에 저장되지 수는 forms.py이미지 DB
class UserImageForm(forms.ModelForm):
image = forms.ImageField()
class Meta:
model = ImageAndUser
fields = ('image',)
에 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,)
에 views.py
@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})
썼다 profile.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>
html과 SEND 버튼에서 3 장의 이미지를 올렸을 때 이미지가 저장되지 않았습니다.하지만 SEND 버튼을 보낸 후 photo.html이 표시되어 프로그램이 성공했습니다. 왜 3 장의 이미지를 저장할 수 없는지 이해할 수 없습니다. 데이터를 썼습니다. .save(). 어떻게 수정해야합니까? 내 코드에서 무엇이 잘못 되었습니까?
형태에서
들으 통해 UR 코드를 썼다을,하지만 보내기 단추를 둘 때, 이미지가 views.py 프로그램 uploaded.always 수 없습니다 else : form = UserImageForm() return render (request, 'registration/profile.html', { 'form': form})'어떻게해야합니까? – user7676799
@ user7676799 무엇이 잘못되었는지 확인하기 위해 html에 양식 오류를 추가하십시오 :'{{form.non_field_errors}}''{{form.image1.errors}}''{{form.image2.errors}}''{{form .image3.errors}}' – neverwalkaloner
@ user7676799 당신은'name = "image"를 html로 가지고 있지만, 모델에는'image1' 필드가 있습니다. 이름을 image1로 변경하십시오'name = "image"' – neverwalkaloner