У меня есть страница, которая позволяет пользователю загружать изображение, и это изображение хранится в файле models.py в {{MEDIA_ROOT}} / image / image1.jpg. Я хочу отобразить это изображение через тег изображения html в другом Интернете. страница

Мой фрагмент кода HTML: <img border="2" src="{{ MEDIA_URL }}/images/{{ghar.image}}" alt="venture picture here"/>

Здесь ghar - это объект, который имеет детали изображения

Может ли кто-нибудь помочь мне сделать то же самое

Я использую Django в качестве фреймворка и sqlite3 в качестве БД

Обновление :

Это моя функция models.py

from django.db import models

class GharData(models.Model):
    place = models.CharField(max_length=40)
    typeOfProperty = models.CharField(max_length=30)
    typeOfPlace = models.CharField(max_length=20)
    price = models.IntegerField()
    ownerName = models.CharField(max_length=80)
    ownerEmail = models.EmailField(blank=True, null=True)
    address = models.CharField(max_length=200)
    nameOfVenture = models.CharField(max_length=100)
    city = models.CharField(max_length=60)
    size = models.CharField(max_length=60)
    designedBy = models.CharField(max_length=50,blank=True,null=True)
    description = models.CharField(max_length=500,blank=True,null=True)
    ownerPhone = models.CharField(max_length=20)


    def __unicode__(self):
        return self.ownerName


class ImageData(models.Model):
    property = models.ForeignKey(GharData, related_name='images')
    image = models.ImageField(upload_to='image/',blank=True,null=True)
    video = models.FileField(upload_to='video/',blank=True,null=True)

    def __unicode__(self):
        return self.property.ownerName

Это urls.py

from django.conf.urls.defaults import patterns, include, url
import settings

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()



urlpatterns = patterns('',
    url(r'^$', 'gharnivas.views.index'),
        url(r'^search/$', 'gharnivas.views.search'),
    url(r'^venture/(?P<ghar_id>\d+)/$', 'gharnivas.views.venture'),
    url(r'^media/(?P<path>.*)$','django.views.static.serve',{'document_root': settings.MEDIA_ROOT}),

   url(r'^admin/', include(admin.site.urls)),
)

Заранее большое спасибо

1
Hitesh D 5 Май 2011 в 12:28

2 ответа

Лучший ответ

Вы можете создать отдельный объект, который имеет доступ к классу ImageData с идентификатором класса GharData.

def Show_something(request, ghar_id):
    g = get_object_or_404(GharData, pk=ghar_id)
    i = g.images.all()
    return render_to_response('YOUR_APP/iventure.html', {'ghar': g, 'imagedata' :i }, context_instance=RequestContext(request))

<img  border="2" src="{{ MEDIA_URL }}{{ imagedata.image }}" alt="venture picture here"/>
0
Nagaraj Tantri 5 Май 2011 в 14:47

<img src="{{ [MODEL_OBJECT].[IMAGE_FIELD].url }}" />

В твоем случае:

<img border="2" src="{{ghar.image.url}}" alt="venture picture here" />

0
DrTyrsa 5 Май 2011 в 12:47
Вы используете upload_to в своей модели? Или обрабатывать загрузку как-то вручную? Если второй - src="{{ MEDIA_URL }}/{{ghar.image.name}}" (или src="{{ MEDIA_URL }}/images/{{ghar.image.name}}")
 – 
DrTyrsa
5 Май 2011 в 13:06
: Я обновил вопрос .. Не могли бы вы проверить, пожалуйста, дайте мне знать о моей ошибке?
 – 
Hitesh D
5 Май 2011 в 13:10
Как я вижу, объект ghar не имеет атрибута image, верно? Так что вы не можете это показать. А ghar может иметь несколько изображений, и вы должны решить, какие из них показывать. Если вы хотите первое, то src="{{ ghar.images.0.image.url }}" будет работать, но лучше сделать это свойство кода модели GharData.
 – 
DrTyrsa
5 Май 2011 в 13:15
@DrTyrsa: Я пробовал, но снова безрезультатно. Дело в том, что Изображение хранится в папке /project/templates/media/image/. Загружается нормальное изображение фона, так как я отрендерил фоновое изображение в view.py. Теперь он не показывает изображение объекта ghar (s). Что касается свойства, которое будет создано для GharData, следует ли мне просто создать новое поле? Что это должно быть за файл?
 – 
Hitesh D
5 Май 2011 в 13:41
Что выводит ghar.images.0.image.url? Есть ли у вас какие-либо объекты в наборе запросов ghar.images? Я думаю, вам нужно создать свойство image для вашей модели GharData и вернуть желаемое изображение для набора запросов self.images.
 – 
DrTyrsa
5 Май 2011 в 13:58