要显示图像 [英] Want to display an image
问题描述
我有一个小问题。我想要一个django应用程序,可以上传和显示图像。目前,它可以上传图像,但我不能显示该图像。
例如,{{comment.photo}}将打印出 C:/ Users / AQUIL / Desktop / myproject / images / P1000992.JPG
。但我想在屏幕上看到这个图像。不是路径。如何将图像打印到屏幕上?
以下是一些可能有帮助的信息。
strong> models.py
class Comment(models.Model):
name = models.CharField (max_length = 40)
datetime = models.DateTimeField(default = datetime.now)
photo = models.ImageField(upload_to ='C:/ Users / AQUIL / Desktop / myproject / media / images' blank = True,null = True)
note = models.TextField()
def __unicode __(self):
return unicode(self.name)
views.py
def home(request):
comments = None
try:
comments = Comment.objects.order_by(' - datetime')
except:
return HttpResponseNotFound()
return render_to_response('home.html',{'comment':comments},context_instance = RequestContext(request))
def add_notes b $ b comments = Comment.objects.all()
if request.method =='POST':
form = CommentForm(request.POST或None,request.FILES)
.is_valid():
comments.datetime = datetime.now()
form.save(True)
return HttpResponseRedirect(reverse(home))
else:
form = CommentForm()
return render_to_response('form.html',{'form':form,'comments':comments},context_instance = RequestContext(request))
home.html
{%extendsbase.html%}
{%block content%}
< H2>注释列表< / H2>
< div style =overflow:auto; padding:10px; border:1px solid black; height:150px; width:700px;>
{%用于评论中的评论%}
{{comment.photo}}< br />
< b>发布者:{{comment.name}}日期:{{comment.datetime.date}}时间:{{comment.datetime.time}}< / b>< br / ;
< div style =font-size:125%> {{comment.note}}< / div>< br /
{%endfor%}
< / div>
{%endblock%}
form.html p>
{%extendsbase.html%}
{%block content%}
< h3>添加备注< / h3>
< form enctype =multipart / form-dataaction =method =POST>
{%csrf_token%}
< table>
{{form.as_table}}
< br />
< / table>
< input type =submitvalue =SaveSTYLE =background-color:#E8E8E8; color:#181818/>
< / form>
{%endblock%}
解决方案
{%if comment.photo%}< img src ={{comment.photo.url}}alt =Photo/& {%endif%}
请参阅Geoffrey的评论,了解如何正确上传图片。
I am having a slight problem. I want a django app that can upload and display an image. Currently, it can upload the image but I cannnot display that image.
So for example, {{comment.photo}} will print out the path
C:/Users/AQUIL/Desktop/myproject/images/P1000992.JPG
. But I want to see that image on the screen. Not the path. How do I print out the image to the screen?Here is some information that may help.
models.py
class Comment(models.Model): name = models.CharField(max_length = 40) datetime = models.DateTimeField(default=datetime.now) photo = models.ImageField(upload_to='C:/Users/AQUIL/Desktop/myproject/media/images', blank=True, null=True) note = models.TextField() def __unicode__(self): return unicode(self.name)
views.py
def home(request): comments = None try: comments = Comment.objects.order_by('-datetime') except: return HttpResponseNotFound() return render_to_response('home.html', {'comments':comments}, context_instance=RequestContext(request)) def add_notes(request): comments = Comment.objects.all() if request.method == 'POST': form = CommentForm(request.POST or None, request.FILES) if form.is_valid(): comments.datetime = datetime.now() form.save(True) return HttpResponseRedirect(reverse(home)) else: form = CommentForm() return render_to_response('form.html', {'form':form,'comments':comments}, context_instance = RequestContext(request))
home.html
{% extends "base.html" %} {% block content %} <H2>List of Comments</H2> <div style="overflow:auto;padding: 10px; border:1px solid black; height:150px; width:700px;"> {% for comment in comments %} {{comment.photo}} <br/> <b>Posted by: {{ comment.name }} Date: {{ comment.datetime.date }} Time: {{comment.datetime.time}}</b><br/> <div style="font-size:125%">{{ comment.note }}</div><br/> {% endfor %} </div> {% endblock %}
form.html
{% extends "base.html" %} {% block content %} <h3>Add Notes</h3> <form enctype="multipart/form-data" action="" method="POST"> {% csrf_token %} <table> {{form.as_table}} <br/> </table> <input type="submit" value="Save" STYLE="background-color:#E8E8E8; color:#181818 "/> </form> {% endblock %}
解决方案{% if comment.photo %} <img src="{{ comment.photo.url }}" alt="Photo" /> {% endif %}
See Geoffrey's comment for how to upload the image correctly.
这篇关于要显示图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!