该软件具备以下主要功能:在用户首页设有一键排餐按钮,用户可于个人中心设置基本偏好与高级偏好,软件依据这些偏好为老年人安排餐品,排餐完成后,按照用户设定的时间将餐品配送至用户手中。用户用餐完毕后,能够获得相应的积分、礼品券、族人币以及经验值,凭借这些可在商家兑换商品。
本项目后端主要运用 Python+Nginx+Mysql+Redis 构建。其中,Python 部分采用 Django+Django-Ninja 组合。Django 框架是极为强大的 Web 框架,能提供数据库管理(借助其 ORM)、用户认证、表单处理等丰富功能,遵循 “胖模型、瘦视图” 设计理念,利于在模型层封装业务逻辑。例如开发电商网站时,Django 模型可便捷地定义商品、用户、订单等数据库表结构及其相互关系。而 Ninja 是专注于构建 API 的轻量级框架,其致力于提供简洁高效的 API 开发体验,运用类型提示提升代码可读性与可维护性。比如定义获取用户信息的 API 端点时,可明确指定输入参数类型与返回数据类型,方便开发与维护过程中理解接口功能。当 Django 与 Ninja 相结合时,既能充分借助 Django 强大功能处理业务逻辑与数据存储,又可利用 Ninja 快速打造高质量 API。比如利用 Django 的 ORM 进行数据查询与操作,再通过 Ninja 将数据以 API 形式向外暴露给移动应用或其他前端框架,以此快速开发出功能完备的后端服务,为前端提供数据支撑。
项目总2个人,我负责全部后端,项目总周期3个月,修改bug2个星期,总共用时3个半月,主要实现了老年人用餐私人订制、老年人商品的售卖、老年人家政服务。