Django前端显示后台上传数据

1.设置settings,在整篇代码末尾写入此代码,没有会出现404一样的情况

MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\', '/')     #设置静态文件路径为主目录下的media文件夹,不用自行创建该文件夹,系统懂得
MEDIA_URL = '/media/'

2.设置urls

from . import settings #导入settings

urlpatterns = [
#此处路由省略
]+static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)#加入此段

 

3.models

class Book(models.Model):
    img = models.ImageField("图片", upload_to='upload/%Y/%m/%d')
    def __str__(self):
        return self.name

  

 

4.views,注意,如果有多条字典数据返回前端必须要把他们合成一条字典,否则只会传入第一条字典数据

def Library(request):
    book_data = Book.objects.all()

    parameter = {#数据总集字典,多条字典需传入前端必须整合成一条,否则只会传入第一条
        'book_data':book_data,
    }
    print(i.img.url)
    print(book_data)
    return HttpResponse(render(request,'页面',parameter))

  

5.前端设置,显示成功!

{% load staticfiles %}{#写在页面代码第一行#}

 {% for book in book_data %}
            <img src="{{ book.img.url }}" />
{% endfor %}

  

 

原文地址:https://www.cnblogs.com/wandn/p/14106813.html