将后台设置成只有中文添加一个商品
apphtml5的store中设置了中文,语言也是只使用中文 在apphtml5端查看商品时
把 访问的 url 以及 完整报错信息,发下邮箱 2358269014@qq.com
@Terry #1楼 发送了
参看有没有 https://github.com/fecshop/yii2_fecshop_app_advanced/tree/master/apphtml5/languages/zh_CN
下面有没有 apphtml5.php 文件,没有加把这个添加上
另外还有main.php https://github.com/fecshop/yii2_fecshop_app_advanced/blob/master/apphtml5/config/main.php
i18N的配置,对比一下:
'i18n' => [ 'translations' => [ 'apphtml5' => [ 'basePaths' => [ '@apphtml5/languages', ], 'sourceLanguage' => 'en_US', // 如果 en_US 也想翻译,那么可以改成en_XX。 ], ], ],
涉及配置参数的调整导致的,应该,我本地我试了没有问题。
@Terry #4楼 找到原因了 因为上传的商品是有属性组为电脑组 有memory_capacity这些参数,去翻译的时候没找到对应的 所以出错了。。。
@PHPJAVAGOC #5楼 贴一下代码,翻译找不到也不应该报错啊。
把你的原因以及相应代码贴一下。
没有相应翻译,应该显示默认语言的。
@Terry #6楼 。。。翻译是对的 只是属性组的问题,在`@common/config/fecshop_local_services/Product.php`中配置的 一个属性组
`
'computer' => [ 'spu_attr' => [ // spu用来区分sku的属性,譬如下面的属性的不同,对应不同的sku,进而是不同的库存 'xinghao' => [ 'dbtype' => 'String', 'label' => '型号', 'name' => 'xinghao', 'showAsImg' => true, 'sort_order' => 1, 'relateImage' => true, // 该属性用图片展示。 'display' => [ 'type' => 'select', 'data' => [ 'xinghao1' => '炫龙T50', 'xinghao2' => '华硕233', 'xinghao3' => '联想250', ], ], //'require' => 0, //'default' => 2, ], 'cpu' => [ 'dbtype' => 'String', 'label' => 'cpu', 'name' => 'cpu', 'sort_order' => 2, 'display' => [ 'type' => 'select', 'data' => [ 'cpu1' => 'i7-770HQ', 'cpu2' => 'i5', 'cpu3' => 'i3', ], ], //'require' => 0, //'default' => 2, ], ], 'general_attr' => [ //增加的普通属性,只是字段标示,不会用于属性过滤等用途 'memory_capacity' => [ 'dbtype' => 'String', 'label' => '内存', 'name' => 'memory_capacity', 'display' => [ 'type' => 'inputString', 'lang' => true, ], 'require' => 0, ], ], 'custom_option_attr' => [ 'color' => [ 'dbtype' => 'String', 'label' => '颜色', 'name' => 'color', 'display' => [ 'type' => 'select', 'data' => [ 'red' => 'red', 'white' => 'white', 'black' => 'black', 'blue' => 'blue', 'green' => 'green', 'yellow' => 'yellow', 'gray' => 'gray', 'khaki' => 'khaki', 'ivory' => 'ivory', 'beige' => 'beige', 'orange' => 'orange', 'cyan' => 'cyan', 'leopard' => 'leopard', 'camouflage' => 'camouflage', 'silver' => 'silver', 'pink' => 'pink', 'purple' => 'purple', 'brown' => 'brown', 'golden' => 'golden', 'leopard' => 'leopard', 'multicolor' => 'multicolor', 'white & blue' => 'White & Blue', 'white & black' => 'White & Black', ], ], //'require' => 0, //'default' => 2, ], ], ],
添加这个属性组的商品以后,front中展示不会去读这里配置的值
在apphtml5中会找不到值 Illegal offset type in isset or empty
@PHPJAVAGOC #7楼 这个我处理了一下,memory_capacity 这种多语言属性显示Array的问题
https://github.com/fecshop/yii2_fecshop/commit/44fe6f4818080d723487189af71376bda054b2f2