当前位置: 首页 > news >正文

基于Django开发校园食堂美食推荐系统

基于Django开发校园食堂美食推荐系统

项目简介

"食堂美食推荐系统"是一款专为校园美食推荐与交流平台。本系统旨在解决师生在校园食堂就餐时面临的"吃什么"的困扰,通过智能推荐、用户评价、社交互动等功能,为用户提供便捷、个性化的美食选择体验。

项目截图

核心功能

  1. 用户互动系统
  • 用户注册、登录、个人信息管理
  • 菜品收藏、评分、评论功能
  • 评论点赞、回复互动
  • 用户间社交互动
  1. 食堂管理功能
  • 食堂、窗口、菜品信息管理
  • 菜品标签分类系统
  • 价格、评分、销量等数据展示
  • 管理员后台数据维护

技术架构

-前端技术栈

  • Vue 3 + TypeScript
  • Vite 构建工具
  • Vant UI 组件库
  • Axios 网络请求

-后端技术栈

  • Django 4.1.7
  • SQLite 数据库(支持扩展至 MySQL)
  • RESTful API 设计
  • Django REST framework

-数据模型

  • 用户(User):用户信息、收藏、购买记录
  • 食堂(Canteen):食堂基本信息
  • 窗口(Window):食堂窗口信息
  • 菜品(Dish):菜品详情、价格、评分等
  • 标签(Tag):菜品分类标签
  • 评论(Comment):用户评价
  • 回复(Reply):评论互动

启动教程

一、环境准备

  1. 系统要求
  • Python 3.7+
  • Node.js 16+
  • npm 8+
  • Git
  1. 开发工具推荐
  • PyCharm
  • Git

二、后端启动步骤

  1. 创建并激活虚拟环境
# Windows
python -m venv venv
venv\Scripts\activate# macOS/Linux
python3 -m venv venv
source venv/bin/activate

2安装后端依赖

cd buaaDishWebsite
pip install -r requirement.txt# 如需支持跨域和MySQL,安装额外依赖
pip install mysqlclient django-cors-headers
  1. 数据库配置
# 执行数据库迁移
python manage.py makemigrations
python manage.py migrate# 创建超级管理员账号(可选)
python manage.py createsuperuser
  1. 启动后端服务
python manage.py runserver

服务默认运行在 http://localhost:8000

三、前端启动步骤

  1. 进入前端目录
cd ../vue
  1. 安装前端依赖
npm install
  1. 开发环境启动
npm run dev

前端服务默认运行在 http://localhost:5173

  1. 生产环境构建
npm run build

构建产物位于 dist 目录

四、项目配置说明

  1. 后端配置
  • 数据库配置:buaaDishWebsite/settings.py
  • API 路由:buaaDishWebsite/urls.py
  • 跨域设置:安装 django-cors-headers 后配置
  1. 前端配置
  • API 地址配置:src/config/index.ts
  • 环境变量:.env 文件
  • 构建配置:vite.config.ts

文章转载自:

http://Z4e5ctTH.tqjks.cn
http://nw6Yj9b7.tqjks.cn
http://6lno3BaA.tqjks.cn
http://UbIs6shZ.tqjks.cn
http://iBQCFLum.tqjks.cn
http://vYwdtBgN.tqjks.cn
http://l1tqMalJ.tqjks.cn
http://S3dOZsRh.tqjks.cn
http://kFKPZjkU.tqjks.cn
http://52DbsHI2.tqjks.cn
http://ONZ9lC4t.tqjks.cn
http://4r6HV0bc.tqjks.cn
http://de9aHJq2.tqjks.cn
http://TNOtxB6X.tqjks.cn
http://PXScEc0v.tqjks.cn
http://VJ3KMJQb.tqjks.cn
http://8OUSDeb1.tqjks.cn
http://Kc7OxLpF.tqjks.cn
http://h4Dfgdg1.tqjks.cn
http://8tAoaRcw.tqjks.cn
http://xFM71IYq.tqjks.cn
http://QQeDoAMQ.tqjks.cn
http://8F6VTmwz.tqjks.cn
http://kk5TeADw.tqjks.cn
http://xxwT8TRo.tqjks.cn
http://2TqrY8O8.tqjks.cn
http://4Ih64EnQ.tqjks.cn
http://aur2brMz.tqjks.cn
http://BeaJUi0x.tqjks.cn
http://pc6WevvN.tqjks.cn
http://www.dtcms.com/a/201530.html

相关文章:

  • Spring Validation校验
  • 如何将内网的IP地址映射到外网?常见方法及详细步骤
  • 如何查看与设置电脑静态IP地址:完整指南
  • NODE-I916 I721模块化电脑发布,AI算力与超低功耗的完美平衡
  • 如何删除 HP 笔记本电脑中的所有数据:3 种解决方案说明
  • 汽车生产中的测试台连接 – EtherCAT 转CANopen高效的网关通信
  • 深入浅出:Spring Cloud Gateway 扩展点实践指南
  • 视频太大?用魔影工厂压缩并转MP4,画质不打折!
  • 探秘汽车门槛梁内板右后段成型工艺
  • Index-AniSora论文速读:探索Sora时代动画视频生成的前沿
  • Java实践:调用jar包里的方法
  • 【全解析】EN18031标准下的RLM恢复机制
  • 【人工智能】人工智能的幕后英雄:大模型训练的挑战与突破
  • Linux:进程信号---信号的概念与产生
  • BERT 作为Transformer的Encoder 为什么采用可学习的位置编码
  • 企业级 Hosts 自动化管理实战:基于 HTTP 检测的高可用域名解析方案
  • 使用 LibreOffice 实现各种文档格式转换(支持任何开发语言调用 和 Linux + Windows 环境)[全网首发,保姆级教程,建议收藏]
  • GMSL:汽车里的音视频传输
  • lambda架构和kappa架构区别
  • JAVA基础——程序流程控制(分支结构)
  • 在 Excel 中使用东方仙盟软件————仙盟创梦IDE
  • linux关闭某端口暂用的进程
  • LinkedList源码分析
  • Jenkins+Docker+Harbor快速部署Spring Boot项目详解
  • 基于正点原子阿波罗F429开发板的LWIP应用(3)——Netbiosns功能
  • Python爬虫(30)Python爬虫高阶:Selenium+Scrapy+Playwright融合架构,攻克动态页面与高反爬场景
  • 采集需要登录网站的教程
  • [每日一题] 3355. 零数组变换 i
  • [ 计算机网络 ] 深入理解TCP/IP协议
  • MySQL 8.0 OCP 1Z0-908 161-170题