Opencart 2.x - 空仪表板没有统计信息等
Opencart 2.x - empty Dashboard no Stats etc
我已经将 openc art 从 1.5.4 迁移到 2.3.0.2
一切正常,但未显示仪表板。不是空白屏幕,而是 header 菜单没有内容没有统计信息等。
我在 common/dashboard 中检查了 .tpl 和 php 。好像是对的。
会不会是权限相关或者数据库
有一些想法
问候
我发现我无法在 admin /backend 中安装仪表板扩展,如 activity、订单、图表等。
所以我手动激活安装它们在数据库中。
oc_extension
extension_id 类型代码
28 仪表盘图表
这里有一个更清晰的说明,说明如何解决仪表板中没有统计信息的问题:
转到 C-Panel/phpMyAdmin 然后 select 您的数据库:
- 通过导出备份数据库。
- 点击 SQL 并粘贴以下代码:
插入 oc_extension
(type
、code
)值
('dashboard', 'activity'),
('dashboard', 'sale'),
('dashboard', 'recent'),
('dashboard', 'order'),
('dashboard', 'online'),
('dashboard', 'map'),
('dashboard', 'customer'),
('dashboard', 'chart');
插入 oc_setting
(store_id
、code
、key
、value
、serialized
)值
(0, 'dashboard_activity', 'dashboard_activity_status', '1', 0),
(0, 'dashboard_activity', 'dashboard_activity_sort_order', '7', 0),
(0, 'dashboard_sale', 'dashboard_sale_status', '1', 0),
(0, 'dashboard_sale', 'dashboard_sale_width', '3', 0),
(0, 'dashboard_chart', 'dashboard_chart_status', '1', 0),
(0, 'dashboard_chart', 'dashboard_chart_width', '6', 0),
(0, 'dashboard_customer', 'dashboard_customer_status', '1', 0),
(0, 'dashboard_customer', 'dashboard_customer_width', '3', 0),
(0, 'dashboard_map', 'dashboard_map_status', '1', 0),
(0, 'dashboard_map', 'dashboard_map_width', '6', 0),
(0, 'dashboard_online', 'dashboard_online_status', '1', 0),
(0, 'dashboard_online', 'dashboard_online_width', '3', 0),
(0, 'dashboard_order', 'dashboard_order_sort_order', '1', 0),
(0, 'dashboard_order', 'dashboard_order_status', '1', 0),
(0, 'dashboard_order', 'dashboard_order_width', '3', 0),
(0, 'dashboard_sale', 'dashboard_sale_sort_order', '2', 0),
(0, 'dashboard_customer', 'dashboard_customer_sort_order', '3', 0),
(0, 'dashboard_online', 'dashboard_online_sort_order', '4', 0),
(0, 'dashboard_map', 'dashboard_map_sort_order', '5', 0),
(0, 'dashboard_chart', 'dashboard_chart_sort_order', '6', 0),
(0, 'dashboard_recent', 'dashboard_recent_status', '1', 0),
(0, 'dashboard_recent', 'dashboard_recent_sort_order', '8', 0),
(0, 'dashboard_activity', 'dashboard_activity_width', '4', 0),
(0, 'dashboard_recent', 'dashboard_recent_width', '8', 0);
参考SQL文件:https://github.com/pekka2/OpenCart-Migration-Upgrade-Tool/blob/master/SQL/dashboard.sql
感谢 pm-netti
仪表板扩展文件有问题:不要在 install 和 uninstall 上将前缀连接到模块名称(只是像其他扩展一样)
打开:admin/controller/extension/extension/dashboard.php
找到这一行:
$this->model_extension_extension->install('dashboard', 'dashboard_' . $this->request->get['extension']);
如果文件没有被编辑,应该在第 19 行,(安装函数)。将其替换为:
$this->model_extension_extension->install('dashboard', $this->request->get['extension']);
换句话说,删除 "'dashboard_' . "
对第 41 行执行相同操作(卸载功能)
$this->model_extension_extension->uninstall('dashboard', 'dashboard_' . $this->request->get['extension']);
替换为:
$this->model_extension_extension->uninstall('dashboard', $this->request->get['extension']);
对我来说效果很好。我不知道前缀 "dashborad_" 是否在某处使用,但似乎毫无用处,因为数据库条目中的列 "type" 设置为 "dashboard"...所以很容易识别是仪表板扩展。
仪表板的另一个奇怪行为:如果模块的宽度总和不是 12 的倍数,仪表板将不会显示最后一个。错误在文件中:admin\controller\common\dashboard.php。要修复它,在最后一个 foreach 右大括号(第 78 行)之后添加:
if (!empty($column)){
$data['rows'][] = $column;
}
我已将修复程序上传到 Opencart 市场 here
我已经将 openc art 从 1.5.4 迁移到 2.3.0.2 一切正常,但未显示仪表板。不是空白屏幕,而是 header 菜单没有内容没有统计信息等。 我在 common/dashboard 中检查了 .tpl 和 php 。好像是对的。
会不会是权限相关或者数据库 有一些想法 问候
我发现我无法在 admin /backend 中安装仪表板扩展,如 activity、订单、图表等。
所以我手动激活安装它们在数据库中。
oc_extension extension_id 类型代码 28 仪表盘图表
这里有一个更清晰的说明,说明如何解决仪表板中没有统计信息的问题:
转到 C-Panel/phpMyAdmin 然后 select 您的数据库:
- 通过导出备份数据库。
- 点击 SQL 并粘贴以下代码:
插入 oc_extension
(type
、code
)值
('dashboard', 'activity'),
('dashboard', 'sale'),
('dashboard', 'recent'),
('dashboard', 'order'),
('dashboard', 'online'),
('dashboard', 'map'),
('dashboard', 'customer'),
('dashboard', 'chart');
插入 oc_setting
(store_id
、code
、key
、value
、serialized
)值
(0, 'dashboard_activity', 'dashboard_activity_status', '1', 0),
(0, 'dashboard_activity', 'dashboard_activity_sort_order', '7', 0),
(0, 'dashboard_sale', 'dashboard_sale_status', '1', 0),
(0, 'dashboard_sale', 'dashboard_sale_width', '3', 0),
(0, 'dashboard_chart', 'dashboard_chart_status', '1', 0),
(0, 'dashboard_chart', 'dashboard_chart_width', '6', 0),
(0, 'dashboard_customer', 'dashboard_customer_status', '1', 0),
(0, 'dashboard_customer', 'dashboard_customer_width', '3', 0),
(0, 'dashboard_map', 'dashboard_map_status', '1', 0),
(0, 'dashboard_map', 'dashboard_map_width', '6', 0),
(0, 'dashboard_online', 'dashboard_online_status', '1', 0),
(0, 'dashboard_online', 'dashboard_online_width', '3', 0),
(0, 'dashboard_order', 'dashboard_order_sort_order', '1', 0),
(0, 'dashboard_order', 'dashboard_order_status', '1', 0),
(0, 'dashboard_order', 'dashboard_order_width', '3', 0),
(0, 'dashboard_sale', 'dashboard_sale_sort_order', '2', 0),
(0, 'dashboard_customer', 'dashboard_customer_sort_order', '3', 0),
(0, 'dashboard_online', 'dashboard_online_sort_order', '4', 0),
(0, 'dashboard_map', 'dashboard_map_sort_order', '5', 0),
(0, 'dashboard_chart', 'dashboard_chart_sort_order', '6', 0),
(0, 'dashboard_recent', 'dashboard_recent_status', '1', 0),
(0, 'dashboard_recent', 'dashboard_recent_sort_order', '8', 0),
(0, 'dashboard_activity', 'dashboard_activity_width', '4', 0),
(0, 'dashboard_recent', 'dashboard_recent_width', '8', 0);
参考SQL文件:https://github.com/pekka2/OpenCart-Migration-Upgrade-Tool/blob/master/SQL/dashboard.sql
感谢 pm-netti
仪表板扩展文件有问题:不要在 install 和 uninstall 上将前缀连接到模块名称(只是像其他扩展一样)
打开:admin/controller/extension/extension/dashboard.php
找到这一行:
$this->model_extension_extension->install('dashboard', 'dashboard_' . $this->request->get['extension']);
如果文件没有被编辑,应该在第 19 行,(安装函数)。将其替换为:
$this->model_extension_extension->install('dashboard', $this->request->get['extension']);
换句话说,删除 "'dashboard_' . "
对第 41 行执行相同操作(卸载功能)
$this->model_extension_extension->uninstall('dashboard', 'dashboard_' . $this->request->get['extension']);
替换为:
$this->model_extension_extension->uninstall('dashboard', $this->request->get['extension']);
对我来说效果很好。我不知道前缀 "dashborad_" 是否在某处使用,但似乎毫无用处,因为数据库条目中的列 "type" 设置为 "dashboard"...所以很容易识别是仪表板扩展。
仪表板的另一个奇怪行为:如果模块的宽度总和不是 12 的倍数,仪表板将不会显示最后一个。错误在文件中:admin\controller\common\dashboard.php。要修复它,在最后一个 foreach 右大括号(第 78 行)之后添加:
if (!empty($column)){
$data['rows'][] = $column;
}
我已将修复程序上传到 Opencart 市场 here