如何为第三方Odoo应用添加安装后在Apps标签显示的图标
Odoo第三方应用图标配置方案(适配App Store发布+Apps页正常展示)
基础配置步骤
- 先制作符合规范的图标文件:必须是
PNG格式,推荐尺寸128px×128px,不要留多余透明边,否则在应用列表里会比其他官方图标小一圈,文件名固定命名为icon.png,注意大小写完全匹配,Odoo系统大小写敏感。 - 把做好的
icon.png直接放在模块根目录,和__manifest__.py(Odoo 10之前版本叫__openerp__.py)同级,标准模块结构参考:
your_module/ ├── __init__.py ├── __manifest__.py ├── icon.png # 图标就放这,不要塞到static子目录里 ├── controllers/ ├── models/ ├── views/ └── static/
踩坑提示:不要把图标放到
static/description或者其他二级目录下,Odoo默认扫描模块根目录的icon.png作为应用入口图标,放错位置100%读不出来。
- (发布到App Store必做)在
__manifest__.py里显式声明图标路径,避免App Store抓取不到图标,添加如下配置项即可:
'icon': '/your_module/icon.png',
把your_module替换成你自己的模块技术名就行,如果做了多版本图标适配,也可以指向static目录下的对应图标文件,常规场景直接用根目录路径就满足需求。
图标不显示的常见排查
- 配置完成后先重启Odoo服务,进入应用列表点击「更新应用列表」,找到你的模块执行升级,不要直接刷新页面看,Odoo对模块资源有强缓存。
- 检查服务器文件权限:Linux环境下确保Odoo运行用户对icon.png有读权限,可执行
chmod 644 你的模块路径/icon.png赋权。 - 清除两层缓存:先开开发者模式点系统里的「清除缓存」,再清浏览器本地缓存,大部分显示异常都是缓存没更新导致的。
- 校验图标文件有效性:不要直接把jpg、svg文件改后缀名当png用,Odoo解析不了这种伪png文件,会直接显示默认的紫色占位图标。
内容的提问来源于stack exchange,提问作者kpg
相关产品推荐
相关产品推荐

