Django - Display ImageField Django - Display ImageField django django

Django - Display ImageField


An ImageField contains a url attribute, which you can use in your templates to render the proper HTML.

{% block content %}    <img src="{{ carx.photo.url }}">{% endblock %}


You can also make use of the Static URL in Settings.py. Make a directory for example "Uploads", in the Static directory of your app. Also change this in your model in models.py.

Use the following code:

<img src="{% static carx.photo.url %}" />


Thanks to all, i fix it in this way.

views.py

def image(request):carx = Car.objects.all()for mycar in carx:    MyCar = mycar.photo.urlvariables = RequestContext(request,{    'carx':MyCar})return render_to_response('image.html',variables)

image.html

{% extends "base.html" %}{% block content %}     <img src="{{ MEDIA_URL }}{{ carx }}"/>{% endblock %}

settings.py

 MEDIA_URL = '/Users/gcarranza/PycharmProjects/django_bookmarks/' STATIC_URL = '/Users/gcarranza/PycharmProjects/django_bookmarks/site_media/' STATICFILES_DIRS = ( '/Users/gcarranza/PycharmProjects/django_bookmarks/site_media',)

Now i know that carx.photo.url retrieve the absolute path of the file and its only matter to load as static file.