Laravel 教程 - 实战 果酱社区 开源电商 API 系统
果酱社区 简介
IYOYO 公司于2011年在上海创立。经过8年行业积累,IYOYO 坚信技术驱动商业革新,通过提供产品和服务助力中小企业向智能商业转型升级。
基于社交店商的核心价值,在2016年9月启动果酱社区 产品,果酱以O2O交易、会员权益、数据跟踪分析、内容体验四大体系形成战略整合方案,打造智能商业生态。
果酱产品包含H5微商城、小程序商城、互动体验平台、门店导购、品牌官网打造等功能及服务,迎合场景化、社群化、个性化的新零售时代,为企业提供灵活定制的产品解决方案,让生意更智慧。
果酱社区技术方案
果酱社区 采用的技术方案有:
- Laravel:API + 管理后台
- vue.js:H5 SPA 单页应用
- 微信小程序
- docker: 所有应用 docker 化,实现快速部署 + 自动更新 + 快速扩容+ 负载均衡
果酱社区 核心模块
果酱社区 产品包含以下核心模块:
- H5 微商城 (vue.js + Laravel API)
- 小程序商城 (微信小程序 + Laravel API)
- 分销功能 (vue.js + 小程序 + Laravel API)
- 活动报名 (vue.js + Laravel API)
- 导购小程序 (小程序 + Laravel API)
- 微信第三方平台 (Laravel + easywechat)
API 教程
为什么想着开源和出教程,出于以下几个目的:
- 提升 果酱社区 产品知名度,18 年主要在自己朋友的关系圈内进行传播。19 年希望能够有更多朋友了解到 果酱 这款产品。
- 来源社区,回馈社区。果酱 产品能够在短时间内快速完成开发、上线并且稳定运营,完全是依托开源社区丰富的资源,因此我们计划开源回馈社区。
- 帮助更多的初学者。在面试的过程中,发现很多初学者,基础较差,在外经过培训后,仍然无法满足公司的招人要求,因此希望通过教程能够帮助一些真正想学习的初学者学习到有价值的内容。
- 虽然为教程,实则也为文档,能够让公司新同事快速了解 iBrand 产品。
- 产品趋于稳定后,有时间来做这件事情。
能学到什么?
- 环境的搭建 + 服务器的部署与运维
- PHP 基本技能 + 编码规范
- Composer 的使用
- Laravel 基础知识 + 高级技能
- Laravel API 解决方案
- 设计模式
- 单元测试
- 电商业务
适合谁?
本教程专注后端开发,专注 Laravel 方案,我们会努力完善教程的每个细节,把入门门槛降到最低,让初学者能够快速上手。我们的教程偏向实操型,就算是刚入门变成的初学者,只要按照教程的内容一步步操作下去,也能够顺利完成学习。
- 计算机类在校生、应届生
- 入门级程序员
- PHP 程序员
- 电商类产品经理
教程特点
- 实战、实战、实战: 少理论,重动手,看结果。
- 最佳实践:良好的编码规范 + 单元测试 + 持续集成 + 文档 ,从一开始就形成良好的编码习惯。
- 提升思维能力:授之于鱼不如授之于渔,教你如何思考问题,解决问题。
- 真实的电商业务:所有的业务需求来自真实的客户,并且线上良好运营中。
教程目录
0.环境准备
- 0.1 Windows + Homestead 5 搭建 Laravel 开发环境
- 0.2 安装 phpMyAdmin 作为数据库管理客户端
- 0.3 SourceTree 管理源码及实现 Git flow 流程
- 0.4 源码使用说明
- 0.5 完成架构搭建
- 0.6 Dingo API 安装
- 0.7 Postman 安装及使用说明
1.果酱小店 登录流程(小程序)
- 1.1 流程简介与分析
- 1.2 验证码的发送与验证
- 1.3 Laravel Passport 实现用户注册与登录
- 1.4 知识小结
2.微信登录
- 2.1 需求分析
- 2.2 流程讲解
- 2.3 果酱 微信第三方平台
- 2.4 功能开发
- 2.5 知识小结
3. 用户系统
- 3.1 需求分析
- 3.2 基础信息
- 3.3 同步微信信息
- 3.4 收货地址管理
4.商品系统
- 4.1 商品分类
- 4.2 商品品牌
- 4.3 商品规格与规格值
- 4.4 商品属性与属性值
- 4.5 商品模型
- 4.6 商品信息
- 4.7 商品列表基础开发
- 4.8 商品列表筛选开发
- 4.9 商品搜索开发
- 4.10 商品详情页基础开发
- 4.11 商品详情页选择SKU开发
- 4.12 知识小结
5.购物车系统
- 5.1 需求分析
- 5.2 流程讲解
- 5.3 商品加入购物车开发
- 5.4 购物车展示商品开发
- 5.5 购物车移除商品开发
- 5.6 购物车修改商品数量开发
- 5.7 知识小结
6.订单系统
- 6.1 需求分析
- 6.2 流程讲解
- 6.3 系统设计
- 6.4 订单列表开发
- 6.5 订单详情开发