Vue请求Django后台获取图片资源

34 篇文章 0 订阅

Vue组件中的代码如下:

 1.在methods中定义获取轮播图图片的方法:get_imgs(),通过ajax对后台进行请求。

 2.在created中调用get_imgs(),在created中的方法会在模板渲染成html前调用,即通常初始化某些属性值,然后再渲染成视图,

不理解的可以自己百度Vue的生命周期。

 3.然后在模板中使用v-for进行渲染,注意:要写入一个key属性,并且<img>标签中的src要写成你后台定义的键。

  (自己老眼昏花,把item.img_url写成了item.url,最后图片不显示,控制台也没有报错,找半天,还是不够细)

 4.在做完这些你会出现CORS跨域请求的报错信息。(解决办法:看这篇文章

 

前端模板代码如下:

<template>
    <div>
        <mt-swipe :auto="4000">
            <mt-swipe-item v-for="item in body" :key="item.id"><img :src="item.img_url"></mt-swipe-item>
        </mt-swipe>
        <h3>HomeContainer</h3>
    </div>
</template>
<script>
export default {
    data(){
        var body = null;
        return {body}
    },
    methods:{
        get_imgs(){
            this.$http.get("http://127.0.0.1:8000/").then(result =>{
                console.log('Success');
                console.log(result.body);
                this.body = result.body;
            },result => {
                console.log('Failed')
            })
        },
    },
    created:function () {
        this.get_imgs()
    }
}

</script>
<style lang="scss" scoped>
    .mint-swipe{
        height:200px;
        .mint-swipe-item{
            img{
                width: 100%;
                height: 100%;
            }
        }

    }
</style>

后端视图代码如下:

from django.shortcuts import render
from django.http import HttpResponse
import json


# Create your views here.


def get_swipes(request):
    result = [
        { "id":1, "img_url": "http://127.0.0.1:8000/static/1.jpg"},
        { "id":2, "img_url": "http://127.0.0.1:8000/static/2.jpg"},
        { "id":3, "img_url": "http://127.0.0.1:8000/static/3.jpg"}
    ]
    return HttpResponse(json.dumps(result,ensure_ascii=False))

 

本门课程重实战,将基础知识拆解到项目里,让你在项目情境里学知识。 这样的学习方式能让你保持兴趣、充满动力,时刻知道学的东西能用在哪、能怎么用。 平时不明白的知识点,放在项目里去理解就恍然大悟了。   一、融汇贯通 本视频采用了前后端分离的开发模式,前端使用Vue.js+Element UI实现了Web页面的呈现,后端使用Python 的Django框架实现了数据访问的接口,前端通过Axios访问后端接口获得数据。在学习完本章节后,真正理解前后端的各自承担的工作。   二、贴近实战 本系列课程为练手项目实战:学生管理系统v4.0的开发,项目包含了如下几个内容:项目的总体介绍、基本功能的演示、Vuejs的初始化、Element UI的使用、在Django中实现针对数据的增删改查的接口、在Vuejs中实现前端增删改查的调用、实现文件的上传、实现表格的分页、实现导出数据到Excel、实现通过Excel导入数据、实现针对表格的批量化操作等等,所有的功能都通过演示完成、贴近了实战   三、课程亮点 在本案例中,最大的亮点在于前后端做了分离,真正理解前后端的各自承担的工作。前端如何和后端交互   适合人群: 1、有Python语言基础、web前端基础,想要深入学习Python Web框架的朋友; 2、有Django基础,但是想学习企业级项目实战的朋友; 3、有MySQL数据库基础的朋友  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值