毕业设计:python+django+vue开发的电子商城系统

1. 功能介绍

在这个项目中,我们采用了B/S结构,使用Python语言进行后端开发,使用Vue.js进行前端开发。整个平台分为前台和后台两个部分,各自具有不同的功能模块。
前台功能包括:
首页:展示平台的主要内容和推荐信息,吸引用户的注意并提供导航功能。
商品详情页:展示具体商品的详细信息,包括商品描述、价格、评价等,并提供购买或加入购物车的功能。
用户中心模块:提供用户管理相关功能,包括用户登录、注册、个人信息修改、订单查询等。
后台功能包括:
总览:提供平台整体运营数据的概览,包括用户数量、订单数量、销售额等关键指标。
订单管理:对用户提交的订单进行管理,包括订单查询、订单状态管理、退款处理等。
商品管理:管理平台上的商品信息,包括商品的添加、编辑、删除等操作。
分类管理:对商品进行分类管理,包括添加、编辑、删除商品分类等操作。
标签管理:管理商品的标签信息,包括添加、编辑、删除标签等操作。
评论管理:管理用户对商品的评论,包括评论的审核、删除等操作。
用户管理:管理平台上的用户信息,包括用户的添加、编辑、删除等操作。
运营管理:提供运营人员进行广告管理、促销活动管理等功能。
日志管理:记录平台的操作日志,包括用户的登录日志、操作日志等,用于追踪和排查问题。
系统信息模块:提供系统的基本信息和配置管理,包括系统版本、数据库配置、缓存配置等。

2.界面预览

2.1 首页

在这里插入图片描述

2.2 后台页面

在这里插入图片描述

3. 部分核心代码展示

3.1 后端

from rest_framework import exceptions
from rest_framework.authentication import BaseAuthentication

from myapp.models import User


# 后台接口认证
class AdminTokenAuthtication(BaseAuthentication):
    def authenticate(self, request):
        adminToken = request.META.get("HTTP_ADMINTOKEN")
        print("检查adminToken==>" + adminToken)
        users = User.objects.filter(admin_token=adminToken)
        """
        判定条件:
            1. 传了adminToken 
            2. 查到了该帐号 
            3. 该帐号是管理员或演示帐号
        """
        if not adminToken or users.count == 0 or users[0].role == '2':
            raise exceptions.AuthenticationFailed("AUTH_FAIL_END")
        else:
            print('adminToken验证通过')

class TokenAuthtication(BaseAuthentication):
    def authenticate(self, request):
        token = request.META.get("HTTP_TOKEN", "")
        if token is not None:
            print("检查token==>" + token)
            users = User.objects.filter(token=token)
            # print(users)
            """
            判定条件:
                1. 传了token 
                2. 查到了该帐号 
                3. 该帐号是普通用户
            """
            if not token or users.count == 0 or (users[0].role in ['1', '3']):
                raise exceptions.AuthenticationFailed("AUTH_FAIL_FRONT")
            else:
                print('token验证通过')
        else:
            print("检查token==>token 为空")
            raise exceptions.AuthenticationFailed("AUTH_FAIL_FRONT")

3.2 前端

const path = require('path')
const webpack = require('webpack')
const buildDate = JSON.stringify(new Date().toLocaleString())

function resolve (dir) {
  return path.join(__dirname, dir)
}

const isProd = process.env.NODE_ENV === 'production'

const assetsCDN = {
}

// vue.config.js
const vueConfig = {
  runtimeCompiler: true,
  publicPath: './',
  configureWebpack: {
    // webpack plugins
    plugins: [
    ],
    // if prod, add externals
    externals: isProd ? assetsCDN.externals : {}
  },

  chainWebpack: config => {
    config.resolve.alias.set('@$', resolve('src'))
  },


  css: {
    loaderOptions: {
      less: {
        modifyVars: {
          // less vars,customize ant design theme
          // 'primary-color': '#F5222D',
        },
        // DO NOT REMOVE THIS LINE
        javascriptEnabled: true
      }
    }
  },

  // disable source map in production
  productionSourceMap: false,
  lintOnSave: undefined,
  // babel-loader no-ignore node_modules/*
  transpileDependencies: []
}

module.exports = vueConfig

有需要的可私信或者评论联系博主噢!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WanHeng WyattVan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值