#django
Вопрос:
Я новичок в Django и пытаюсь сохранить изображение в базе данных. Я написал несколько строк кода, которые не показывают никаких ошибок, но не могут сохранить изображение в базе данных.
Вид:-
def IndexView(request):
print("index view..")
if request.method == 'POST':
print("post")
form = ImageForm(request.POST, request.FILES)
print("form {}".format(form))
if form.is_valid():
print("valid..")
form.save()
form = ImageForm()
return render(request, "index.html")
мой шаблон:-
<div class="container">
<form enctype="multipart/form-data" action="" method="post">
{% csrf_token%}
<hr><br><br>
<input type="file" name="" id="" required/>
<br><br>
<input type="submit" class="btn btn danger" value="Upload">
</form>
</div>
Модель:-
class MyImage(models.Model):
image = models.ImageField(upload_to="myimage")
name = models.CharField(max_length=200, blank=True, default="")
Надеюсь скоро получить от вас весточку
Заранее спасибо
Комментарии:
1. Атрибут «имя» файла, введенного в шаблон, должен соответствовать имени поля изображения в форме формы изображения. В настоящее время он пуст
2. У вас есть модель этого, если да, пожалуйста, поделитесь
3. да, я разделяю модель.
4. @sarangkkl я добавил модель выше, пожалуйста, взгляните..
5. @лейн Шелвингтон спасибо, что написали..
Ответ №1:
<div class="container">
<form enctype="multipart/form-data" action="" method="post">
{% csrf_token%}
<hr><br><br>
<input type="file" name="image" id="" required/>
<br><br>
<input type="submit" class="btn btn danger" value="Upload">
</form>
</div>
def IndexView(request):
print("index view..")
if request.method == 'POST':
image=request.FILES.get('image')
name=///give a nmae to your image
x = MyImage.objects.create(image=image,name = name)
x.save()
return render(request, "index.html")
таким образом, вы можете увидеть свое изображение в панели администратора, если у вас возникнет какая-либо ошибка при попытке установить модуль, просто выполните поиск в Google