laijinyou/yii2_fecshop_app_advanced

Yii 2 高级项目模板

2.17.9 2022-10-12 05:44 UTC

This package is auto-updated.

Last update: 2024-09-27 16:24:36 UTC


README


Latest Stable Version Total Downloads Latest Unstable Version

项目状态:

正式版本已经发布,后台(appadmin)和PC端(appfront), WAP端(apphtml5), Vue端(appserver)已完成,完成了一些基本的API。

1、Fecmall介绍

Fecmall(全称Fancy ECommerce Shop)是一款基于php Yii2框架开发的开源电商系统。Fecmall支持多语言、多货币,架构上支持PC、手机web、手机app和ERP对接等多种入口,您可以免费快速地定制和部署属于您的电商系统。

详细请查看地址:Fecmall介绍

Fecmall官网:http://www.fecmall.com,您可以在这里提交bug,问题咨询等。

Fecmall【已完成】PC Web Demo:http://fecshop.appfront.fancyecommerce.com/

Fecmall【已完成】Mobile Web Demo(WAP):http://fecshop.apphtml5.fancyecommerce.com

Fecmall【已完成】Mobile VUE Demo(Appserver,前后端完全分离模式):http://demo.fancyecommerce.com/#/

Fecmall【已完成】微信小程序(Appserver,前后端完全分离模式):微信小程序搜索“Fecmall”查看demo,或者扫描下面的小程序码:

wx_xiaochengxu_fecmall

Fecmall后台演示地址:加入QQ群,在群公告中查看后台演示地址、账号密码等信息

Fecmall Fecmall QQ群(新):782387676,入群验证:fecmall

作者,Terry QQ邮箱:2358269014@qq.com

Fecmall Github地址: https://github.com/fancyecommerce/yii2_fecshop

开源协议:Fecmall 授权协议

2、Fecmall文档和视频

二次开发及安装文档: Fecmall 安装开发文档【撰写完成】

使用帮助说明文档: Fecmall 使用帮助文档【撰写完成】

安装开发帮助视频: Fecmall 安装开发视频【撰写完成】

前后端分离模式Api: Appserver VUE Api文档【撰写完成】

3、安装Fecmall

请务必按照说明安装,自行配置环境进行安装。

从基础的Linux环境一步一步配置的方法,详细请查看文档:Fecmall 安装

4、Fecmall 配置:

配置详情请查看:Fecmall 配置

如果您使用vagrant box的安装方式,上述步骤在box中已配置完毕。

5、架构特色

架构特色:详细请查看介绍:Fecmall 架构特色

以下为简要概述:

Fecmall全称为Fancy ECommerce Shop,是一款优秀的开源电商系统,遵循BSD-3-Clause协议(与Yii2框架相同的开源协议),旨在方便Yii2用户快速开发商城。作为一款可持久发展的商城系统,在框架层面具有以下特性:

  1. 由于商城系统的复杂性,原始的框架MVC结构显得有些力不从心,Fecmall框架增加了Block层,Controller层只负责调度,Model只负责数据库映射,中间的处理逻辑由Block来完成,View层负责显示,这样各司其职,避免造成Controller文件过于庞大。

  2. 增加独立功能块,类似于Yii2的Widget,目的是为了让一些侧栏公用块可以通过配置的方式添加,同时还可以具有设置缓存的功能,例如分类侧栏的产品推荐、newsletter等独立显示块可能在很多页面中使用,通过独立功能块可以方便地加载。

  3. 在Model层的上层加入服务层Services,这样,Controller、Block、View层在原则上不能直接调用Model,必须通过Services层以及子Services层,然后Services访问各个Model,组织数据,事务处理等操作,将数据结果返回给上层,这种设计可以方便业务发展后进行重构,或者以后如果出现新技术、新方式,都可以重构为想要的样子,例如,将某个底层由MySQL换成MongoDB,或者为了应对高并发读写和多事务性的功能部分,进行分库分表的设计。

  4. Fecmall多模板系统,Fecmall设置了多个模板路径,各个模板路径下的文件被加载的优先级不同,其中,Fecmall的模板路径下的文件最全面,但是优先级最低,第三方模板路径优先级其次,用户本地模板路径优先级最高,用户可以通过复制相应路径下的view或者js、css文件到本地模板路径,存在于高优先级模板路径的文件会被优先加载,这样用户可以通过多模板系统的原理进行模板的制作,同时,不影响Fecmall模板的升级,如果Fecmall view文件升级后被修改,那么用户可以比对本地模板文件与升级模板文件的代码的不同,复制更改的代码到本地模板路径即可。第三方的模板路径的优先级介于本地模板路径和Fecmall模板路径之间。

  5. 重写机制,Fecmall的功能基本都可以被用户重写,包括services层、Modules、Controller、Block、Views、View Layout以及Js、Css、Img等,都可以被用户重写,其中Js、Css、Img、Views、View Layout是通过多模板路径优先级来实现的,其他的是通过配置文件的覆盖更改来实现重写,这样,用户就可以很方便重构Fecmall或者第三方的功能和模板。

  6. 升级最小化干扰,Fecmall的核心文件是放到vendor/laijinyou/yii2_fecshop路径下面,和第三方扩展、用户二次开发路径完全隔离开,Fecmall可以通过composer进行核心功能的升级,用户只需要通过composer升级即可。

  7. 快速高效,Fecmall Servises遵循Yii2的懒加载方式,只初始化使用到的组件服务,缓存方面有整页缓存、block部分缓存、动态数据ajax加载等方式,让您的网站快速响应。

  8. Fecmall多入口模式,分为appadmin(后台)、appfront(PC前端)、apphtml5(手机web)、appserver(手机app服务)、appapi(erp,或者其他接口对接),不同的业务,不同的设备,进入不同的入口,各个入口共用服务层services,但是modules部分独立,这样相互干扰最小,可以相互独立开发。

  9. 后台封装化,fec_admin扩展可以快速实现增删改查类型的表单列表,方便用户快速进行增删改查。

鉴于以上特点,您可以下载安装Fecmall,然后更改Fecmall的模板和功能,扩展想要的功能,或者安装第三方开发好的扩展或者模板,来快速组建起您的网站。

6、捐赠

如果您认为这是一个不错的项目,对您有帮助,你可以通过下面的方式进行捐赠,这里感谢您对开源项目的支持。

支付宝:

微信:

捐赠历史:(捐助,建议写一下留言)