第 2 位会员
fecmall-2版本,appserver api端 使用session是不行的。session是浏览器web用的
这里有一个帖子,安装fecmall访问install.php报错500的,可以看一下帖子:http://www.fecmall.com/topic/2140
1.init.bat 默认0 并直接quit无法选择
答:fecmall-2版本默认使用develop模式,不需要选择
2.install.php 访问500错误,提供这点错误信息,本人无法帮到,自己排查
仔细看安装文档,每一个步骤都操作,操作的每个步骤,查看一下是否成功。
安装文档是验证过的,很多人安装都通过了,基本出现的问题,论坛都有相关帖子可以搜索到。
本人这里只能贴思路,太新手的,帮不上忙,先学习一下yii把
没有,你可以写一下详细的需求逻辑,找时间开发一下
OK,此问题已完善解决。
文档已经更新:http://www.fecmall.com/doc/fecshop-guide/develop/cn-2.0/guide-fecmall-rewrite-func.html#8rewritemapblock-model
下个版本,这些内容将提交。
现在已经完善,代码已经提交:https://github.com/fecshop/yii2_fecshop_app_advanced/commit/4075f7972c4aa330eb75de3d0d489a84ce34d0d7
@boluo [[[#5楼](#comment5)](#comment5)](#comment5) 看了您的回复,我回去查看了一下代码,是我搞错了
现在已经转移到 @app/config/fecshop_local.php文件里面配置,例子:https://github.com/fecshop/yii2_fecshop_app_advanced/blob/master/appfront/config/fecshop_local.php
@app/config/fecshop_local.php
当时这样修改的原因,是fecmall-2版本需要做应用市场,扩展的要求是,可以重写所有的功能,可以通过配置覆盖的方式进行重写,因此RewriteMap也在这个里面,因此进行了重构,由于当时的疏漏,文档忘记更新了,本人也忘记这个了,造成上面的回复出现问题,上面的回复针对的fecmall-1版本,fecmall-2版本需要写到@app/confog/fecshop_local.php配置文件里面,譬如:https://github.com/fecshop/yii2_fecshop_app_advanced/blob/master/appfront/config/fecshop_local.php
如果是应用插件扩展重写,可以参看:http://www.fecmall.com/topic/2216 ,这个里面有一个部分:
// yii class rewrite map 'yiiClassMap' => [ // 'fecshop\app\appfront\helper\test\My' => '@appfront/helper/My.php', ], // 重写model和block 'fecRewriteMap' => [ '\fecshop\app\appfront\modules\Catalog\block\category\Index' => '\fecyo\app\appfront\modules\Catalog\block\category\Index', // '\fecshop\app\appfront\modules\Customer\block\address\Edit' => '\fectb\app\appfront\modules\Customer\block\address\Edit', ],
感谢您花费时间研究这个问题,本人将更新一下文件(fecshop_local.php里面加上例子,删除YiiRewrite.php文件),以及更新文档。
再次感谢!
1.从你的操作过程,注释都复制上去执行,本人对这种操作无语
2.报错killed,之前遇到的都是因为内存不足,一般需要2G以上内存,内存不足就会被kill
3.要么你不会搜索,要么你压根就没怎么仔细搜索问题,论坛有相关帖子,搜索killed就有帖子 http://www.fecmall.com/topic/612
killed
详细说一下你的思路,能多详细就多详细
@sundaxia #3楼
文档是个好东西,多看看文档: http://www.fecmall.com/doc/fecshop-guide/develop/cn-2.0/guide-fecmall-rewrite-func.html
提供一下信息,你自己debug一下试试吧
1.customer services: https://github.com/fecshop/yii2_fecshop/blob/master/services/Customer.php#L64
2.重写的函数在这里: https://github.com/fecshop/yii2_fecshop/blob/master/services/Customer.php#L87
list($this->_customerLoginModelName, $this->_customerLoginModel) = Yii::mapGet($this->_customerLoginModelName);
也就是Yii::mapGet方法
https://github.com/fecshop/yii2_fecshop/blob/master/yii/Yii.php#L34
public static function mapGet($absoluteClassName, $arguments = []){ $absoluteClassName = self::mapGetName($absoluteClassName); if (!empty($arguments) && is_array($arguments)) { $class = new ReflectionClass($absoluteClassName); $absoluteOb = $class->newInstanceArgs($arguments); /** * 下面的 ...,是php的语法糖(只能php5.6以上,放弃),也就是把$paramArray数组里面的各个子项参数, * 作为对象生成的参数,详细可以参看:https://segmentfault.com/q/1010000006789348 */ //$absoluteOb = new $absoluteClassName(...$arguments); } else { $absoluteOb = new $absoluteClassName; } return [$absoluteClassName, $absoluteOb]; }
自己debug一下,找找原因吧
mongodb是nosql数据库,不需要和mysql那样建立表结构,直接用Yii Mongodb ActiveRecord存储就行
Yii2如何操作Mongodb,自己去查资料,这些和Fecmall没有关系。属于Yii2和Mongodb的知识。
如果docker安装,那么,在安装的时候,mysql host,应该填写mysql,而不是ip
mysql
ip
有的,参看文档:
Fecmall-使用Mongodb数据库
1.手机端样式,是apphtml5,还是appserver(前后端分离)
2.fecshop的源文件,是composer库包发布,在 vendor/fancyecommerce/fecshop里面
vendor/fancyecommerce/fecshop
3.没有隐藏起来,100开源。
1.你添加配置文件:appserver/config/YiiRewriteMap.php
那么针对的,只有appserver入口,其他的入口不生效,如果想要全部生效,需要写道common中
2.model文件:appserver\local\local_models\mysqldb\customer\CustomerLogin.php
修改为:
class CustomerLogin extends \fecshop\models\mysqldb\customer\CustomerLogin {
也就是fecshop字符前面添加 \,但是你没有生效,意思应该是没有报错,因此,我判断你的配置应该没有加载
fecshop
你写的格式:
'\appserver\local\local_models\mysqldb\customer\CustomerLogin',
没有问题,加载问题,参看回复1,猜测你访问的入口不是appserver
appserver
3.仔细看一下文件路径是否正确,以及大小写问题。
FECMALL中文商城(PC) fecyo上线