[英]Django Admin : Display pictures from Admin Form
Unfortunately I didn't handle Django since several months. 不幸的是,自几个月以来,我一直没有处理Django。 I would like to know How I can display Django object from my Admin form to my template. 我想知道如何从管理表单向模板显示Django对象。
I'm making a personal website and all forms (add pictures, add extra-info, ...) should be from admin panel. 我正在建立一个个人网站,所有表格(添加图片,添加额外信息等)都应来自管理面板。
I have a model.py file : 我有一个model.py文件:
from __future__ import unicode_literals
from django.db import models
class ImageUpload(models.Model) :
Nom = models.CharField(max_length=50, verbose_name="Nom de l'objet", blank=False)
Instrument = models.CharField(max_length=50, verbose_name="Instrument", blank=False)
Imageur = models.CharField(max_length=50, verbose_name="Imageur", blank=False)
Monture = models.CharField(max_length=50, verbose_name="Monture", blank=False)
Instrument_Guidage = models.CharField(max_length=50, verbose_name="Instrument de Guidage", blank=False)
Imageur_Guidage = models.CharField(max_length=50, verbose_name="Imageur de Guidage", blank=False)
Reducteur = models.CharField(max_length=50, verbose_name="Reducteur/Correcteur de Focale", blank=False)
Logiciels = models.CharField(max_length=60, verbose_name="Logiciels", blank=False)
Date = models.DateField()
Nombre_Pose = models.IntegerField(verbose_name="Nombre de pose total")
Temps_Pose = models.IntegerField(verbose_name="Temps de pose unitaire")
Integration = models.FloatField(verbose_name="Temps de pose total")
Darks = models.IntegerField(verbose_name="Nombre de Darks")
Flats = models.IntegerField(verbose_name="Nombre de Flats")
Bias = models.IntegerField(verbose_name="Nombre de Bias")
Lunaison = models.FloatField(verbose_name="Pourcentage de Lune")
FWHM = models.FloatField(verbose_name="FWHM moyenne")
Temperature = models.IntegerField(verbose_name="Température")
Lieu = models.CharField(max_length=60, verbose_name="Lieu de Photo", blank=False)
Image_upload = models.ImageField(upload_to='Media/', verbose_name="Image")
def __unicode__(self):
return unicode (self.id, self.Nom, self.Instrument, self.Imageur, self.Monture, self.Instrument_Guidage, self.Imageur_Guidage, self.Reducteur, self.Logiciels,
self.Date, self.Nombre_Pose, self.Temps_Pose, self.Integration, self.Darks, self.Flats, self.Bias, self.Lunaison, self.FWHM, self.Temperature, self.Lieu, self.Image_upload)
I have my admin.py file : 我有我的admin.py文件:
from django.contrib import admin
from .models import ImageUpload
class ImageUploadAdmin(admin.ModelAdmin) :
fields = ["Nom", "Instrument", "Imageur", "Monture", "Instrument_Guidage", "Imageur_Guidage", "Reducteur", "Logiciels",
"Date", "Nombre_Pose", "Temps_Pose", "Integration", "Darks", "Flats", "Bias", "Lunaison", "FWHM", "Temperature", "Lieu", "Image_upload"]
admin.site.register(ImageUpload,ImageUploadAdmin)
And my views.py file : 和我的views.py文件:
def CielProfond(request) :
Images = ImageUpload.objects.latest("id")
return render(request, 'CielProfond.html', {"Images" : Images})
Finally, in my template file : 最后,在我的模板文件中:
{% block content %}
<img src='{{Images.Image_upload}}'/>
{% endblock content %}
I don't have any error, but my picture doesn't display and I have a small icon. 我没有任何错误,但是我的图片没有显示,并且有一个小图标。 My path seems to be good too. 我的道路似乎也不错。
I found the answer. 我找到了答案。
I have to add .url
like this : 我必须像这样添加.url
:
<img src='{{Images.Image_upload.url}}'/>
In this way, my picture is well-displayed in my HTML template 这样,我的图片可以很好地显示在HTML模板中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.