2015-05-04 93 views
0

我想在django中创建和管理滑块。我可以在管理页面创建,但是当我在主页上显示图像时,它不显示任何内容。滑块不在Django中工作1.7

这是我的models.py

class Static(models.Model): 
title   = models.CharField(max_length=50) 
description  = models.TextField() 
images1   = models.ImageField(upload_to="slider") 
images2   = models.ImageField(upload_to="slider") 

def __str__(self): 
    return self.title; 

view.py

def slider(request): 
sliders = Static.objects.all() 
return render(request, 'kerajinan/home.html', { 
'sliders' : sliders, 
}) 

home.html的

<div class="carousel-inner"> 
         {% for i in image %} 
          <div class="item active"> 
           <div class="col-sm-6"> 
            <h2>{{i.title}}</h2> 
            <p>{{i.description}}</p> 
            <button type="button" class="btn btn-default get">Get it now</button> 
           </div> 
           <div class="col-sm-6"> 
            <img src="{{ i.images1.url }}" class="girl img-responsive" alt="" /> 
            <img src="{{ i.images2.url }}" class="pricing" alt="" /> 
           </div> 
          </div> 
         {% endfor %} 

         {{slider|pprint}} 

        </div> 

settings.py:

MEDIA_ROOT = os.path.join(BASE_DIR, 'static/images/') 
MEDIA_URL = '/static/images/' 

Urls.py:

urlpatterns = patterns('', 
    url(r'^home/$', 'kerajinan.views.home', name='home'), 
    url(r'^static/images/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.MEDIA_ROOT}) 
) 

我已与此

python manage.py shell 
>>>from kerajinan.models import Static 
>>>sliders = Static.objects.all() 
>>>sliders 

检查数据和结果记录数据。 你能帮我解决这个问题吗?

回答

3

您不需要编写自定义方法来获取图像的URL。您可以直接在模板中访问图片网址:

{{ i.images1.url }} 
+0

第一次我使用{{i.images1.url}}但它不工作,所以我自定义方法来获取URL。 – User0511