Jump to content

Archived

This topic is now archived and is closed to further replies.

tognere

Upload de imagem com Image.Field e exibir no html

Recommended Posts

galera...não consigo exibir a imagem que está na pasta que eu fiz o upload da imagem...o upload com image.field pela administração do django está funcionando...eu verifico a pasta de upload do projeto e verifica que foi feito o upload...entretanto eu naum consigo exibir no html essa imagem...alguem pode me ajudar...desde já agradeço...

models.py

from django.db import models

class Postagem(models.Model):

titulo = models.CharField(max_length=100,blank=False)

imagem = models.ImageField(upload_to = "blog/uploads/postagem",blank=True)

conteudo = models.TextField()

data = models.DateField() 

status = models.CharField(
        max_length=1,
        default=artigos,
        choices=menu,
        blank=False,
        null=True,
        )

def __unicode__(self):

return "%s - %s - %s" % (self.data,self.titulo,self.conteudo)
index.html
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>


{% if blog_list %}
{% for b in blog_list %}
{{ b.imagem }} <!--aqui exibi o local da imagem com seu nome....ta funcionando-->
<img src="./../uploads/postagem/{{b.imagem}}"> <!--exibi só a tag, mas naum aparece a imagem-->
{{ b.data }} <br />
{{ b.titulo }} <br />
{{ b.conteudo }} <br /> <br />
{% endfor %}
{% endif %}

</body>
</html>

 

Share this post


Link to post
Share on other sites

Dê uma olhada na documentação do framework:

 

https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.FileField.storage

https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-MEDIA_URL

https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-MEDIA_ROOT

 

Lembre-se que o '..' é relativo ao nível do template. Seu settings.py deveria ficar assim:

 

 

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'uploaded')

 

E o template provavelmente iria ficar

 

 

{% for b in blog_list %}
   <p>
      <img src="{{ MEDIA_URL }}{{ b.imagem.url }}">
      {{ b.data }} <br />
      {{ b.titulo }} <br />
      {{ b.conteudo }}
  </p>
{% endfor %}

 

 

Para desenvolvimento é necessário incluir uma linha no urls.py: https://docs.djangoproject.com/en/1.6/howto/static-files/#serving-files-uploaded-by-a-user-during-development

Share this post


Link to post
Share on other sites

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.