繁体   English   中英

不显示图像! Django的

[英]Does not display an image! Django

不显示图像!

图像已存在,django没有在页面上显示任何图像,如何解决此问题?

这是我的模型

class All_Images_Of_The_Series(models.Model): 
    to_series                               = models.ForeignKey(Series, on_delete=models.CASCADE, blank=True, default=None)
    image_of_all                            = models.ImageField(upload_to="previews/previews_for_series/", default=None,width_field="width_field", height_field="height_field")
    is_poster                               = models.BooleanField(default=False) 
    is_active                               = models.BooleanField(default=True)
    width_field                             = models.IntegerField(default=0)
    height_field                            = models.IntegerField(default=0)
    timestamp                               = models.DateTimeField(auto_now_add=True, auto_now=False)
    updated                                 = models.DateTimeField(auto_now_add=False, auto_now=True)

    def __str__(self):
        return "Active: |%s| and Poster: |%s| " % (self.is_active, self.is_poster)

    class Meta:
        ordering                            = ["-timestamp"]
        verbose_name                        = 'All_Images_of_the_Series'
        verbose_name_plural                 = 'All_Images_of_the_Series'

这是我的views.py

def homeview(request, *args, **kwargs):
    full_path                       = All_Images_Of_The_Series.objects.all()
    context = {"full_path":full_path,}
    return render(request, 'home.html', context)

这是我的模板

<div class="col-sm-3 right-side">
                <div class="new-movies-block">
                    <a class="header" href="#/new/">
                        <div class="title">Новинки</div>
                    </a>
                    {% for one_to_one_path in full_path %}
                        <div class="movie-spacer" ></div>
                        <a class="new-movie" href="{{ one_to_one_path.to_series.get_absolute_url }}" title="{{ one_to_one_path.to_series.eng_name }}">
                            <div class="title-info">
                            {{ one_to_one_path.to_series.season_of_this_series.number_of_season }} сезон {{ one_to_one_path.to_series.number_of_series }} серия 
                            </div>
                            <div class="date">{{ one_to_one_path.to_series.timestamp_rus }}</div>
                            <img src="{{ one_to_one_path.image_of_all.url }}" class="img-responsive">
                        </a>
                    {% endfor %}
                </div>
            </div>

如果您查看元素代码,图像,则在“ src”行中有指向图片的路径,并且可以正常工作! 但是不显示图片本身!

<img src="/media/previews/previews_for_series/1.png" class="img-responsive">

这是控制台错误(f12)

GET http://127.0.0.1:8000/media/previews/previews_for_series/1.png 404 (Not Found)

只是一个简单的想法,您并没有向我展示您可能需要进行的工作。 例如,如果要在网址上进行开发,则需要https://docs.djangoproject.com/en/1.11/howto/static-files/#serving-files-uploaded-by-a-user-during-development和在您的设置上,您可能需要类似的东西

MEDIA_URL ='/ media /'

MEDIA_ROOT = os.path.join(BASE_DIR,“媒体”)

希望对您有所帮助

最好

也许您尚未将媒体添加到您的urls.py中

From django.conf import settings

# your stuff

if settings.DEBUG:

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

做这个 !

from django.conf.urls import include, url
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    url(r'^admin/', admin.site.urls),

    url(r'^series/', include("serials.urls", namespace='series')),
    url(r'^', include("serials.urls", namespace='homeview')),



]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM