1.rewriteMap的功能是最近加上去的,也就半个月左右,最省劲的方法你您完全重新安装
2.您也可以不重新安装,您需要把fecshop进行升级,升级文档参看:http://www.fecshop.com/doc/fecshop-guide/develop/cn-1.0/guide-fecshop-about-update.html
升级后,vendor文件夹下面的文件是最新的,但是,根目录的本地文件是无法升级的,您需要手动更改。
首先,@appfront/web/index.php 添加代码:
/**
 * Yii 重写block controller model等
 * 也就是说:除了compoent 和services,其他的用RewriteMap的方式来实现重写
 * 重写的类可以集成被重写的类
 */ 
$yiiRewriteMap = yii\helpers\ArrayHelper::merge(
    require(__DIR__ . '/../config/YiiRewriteMap.php'),
    require(__DIR__ . '/../../common/config/YiiRewriteMap.php')
);
if(is_array($yiiRewriteMap) && !empty($yiiRewriteMap)){
	Yii::$rewriteMap = $yiiRewriteMap;
}
添加完的index.php的全部代码为:
<?php
error_reporting(E_ALL || ~E_NOTICE); //除去 E_NOTICE 之外的所有错误信息
#ini_set('session.cookie_domain', '.fancyecommerce.com'); //初始化域名,
$http = ($_SERVER['SERVER_PORT'] == 443) ? 'https' : 'http';
$homeUrl = $http.'://'.$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['SCRIPT_NAME']), '\\/');
/**
 * fecshop 使用合并配置(config)数组进行加速,true 代表打开。
 * 打开配置加速开关前,您需要执行 http://domain/index-merge-config.php 进行生成单文件配置数组。
 * 注意:打开后,当您修改了配置,都需要访问一次上面的链接,重新生成单文件配置数组,否则修改的配置不会生效
 * 建议:本地开发环境关闭,开发环境如果访问量不大,关闭也行,如果访问量大,建议打开
 */
$use_merge_config_file = false;
defined('YII_DEBUG') or define('YII_DEBUG', false);
defined('YII_ENV') or define('YII_ENV', 'prod');
require __DIR__.'/../../vendor/autoload.php';
require __DIR__.'/../../vendor/fancyecommerce/fecshop/yii/Yii.php';
require __DIR__.'/../../common/config/bootstrap.php';
require __DIR__.'/../config/bootstrap.php';
if ($use_merge_config_file) {
    $config = require '../merge_config.php';
} else {
    $config = yii\helpers\ArrayHelper::merge(
        require(__DIR__.'/../../common/config/main.php'),
        require(__DIR__.'/../../common/config/main-local.php'),
        require(__DIR__.'/../config/main.php'),
        require(__DIR__.'/../config/main-local.php'),
        // fecshop services config
        require(__DIR__.'/../../vendor/fancyecommerce/fecshop/config/fecshop.php'),
        // fecshop module config
        require(__DIR__.'/../../vendor/fancyecommerce/fecshop/app/appfront/config/appfront.php'),
        // thrid part confing
        // common modules and services.
        require(__DIR__.'/../../common/config/fecshop_local.php'),
        // appadmin local modules and services.
        require(__DIR__.'/../config/fecshop_local.php')
    );
}
$config['homeUrl'] = $homeUrl;
/**
 * yii class Map Custom 
 */ 
$yiiClassMap = yii\helpers\ArrayHelper::merge(
    require(__DIR__ . '/../config/YiiClassMap.php'),
    require(__DIR__ . '/../../common/config/YiiClassMap.php')
);
if(is_array($yiiClassMap) && !empty($yiiClassMap)){
	foreach($yiiClassMap as $namespace => $filePath){
		Yii::$classMap[$namespace] = $filePath;
	}
}
/**
 * Yii 重写block controller model等
 * 也就是说:除了compoent 和services,其他的用RewriteMap的方式来实现重写
 * 重写的类可以集成被重写的类
 */ 
$yiiRewriteMap = yii\helpers\ArrayHelper::merge(
    require(__DIR__ . '/../config/YiiRewriteMap.php'),
    require(__DIR__ . '/../../common/config/YiiRewriteMap.php')
);
if(is_array($yiiRewriteMap) && !empty($yiiRewriteMap)){
	Yii::$rewriteMap = $yiiRewriteMap;
}
/*
 * 添加fecshop的服务 ,Yii::$service  ,  将services的配置添加到这个对象。
 * 使用方法:Yii::$service->cms->article;
 * 上面的例子就是获取cms服务的子服务article。
 */
new fecshop\services\Application($config['services']);
unset($config['services']);
$application = new yii\web\Application($config);
$application->run();
更换了代码,您需要创建 @appfront/config/YiiRewriteMap.php ,示例代码如下:
return [
    /**
     * \fecshop\models\mongodb\Category 为原来的类
     * \appfront\local\local_models\mongodb\Category 为重写后的类
     * 重写后的类可以集成原来的类。
     */
    '\fecshop\models\mongodb\Category'  => '\appfront\local\local_models\mongodb\Category',
];