Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

将odoo设置中的debug选项设置在菜单栏上



  • odoo中的debug选项是在设置中,每次去设置比较麻烦,我扩展了web.ControlPanel,将激发开发者模式和取消开发者模式选项设置在顶部的菜单中,这样方便操作。
    不啰嗦了,直接上代码:

    /**
     * @author taony
     * @description add debug menu on the top menu
     * @since 2018-05-28
     */
    odoo.define('web.taony_debug_menu', function (require) {
        "use strict";
    
        var session = require('web.session');
        var isDebug = true;
    
        //隐藏菜单
        var ControlPanel = require('web.ControlPanel');
        ControlPanel.include({
            start: function () {
                var result = this._super.apply(this, arguments);
    
                //使用此方法把开启debug放在菜单上进行控制
                if (isDebug) {
                    //设置只有admin才能有开发者选项,一般用户是么样此权限的
                    if (session.uid === 1) {
                        var oe_systray = $('.oe_systray');
                        oe_systray.prepend('<li class="o_mail_navbar_item o_no_notification"><a class="doe_activate_debug_mode " href="?debug=assets" title="激活开发者模式"><i class="fa fa-check"></i></a></li><li class="o_mail_navbar_item o_no_notification"><a class="doe_activate_debug_mode " href="/web" title="取消激活开发者模式"><i class="fa fa-close"></i></a></li>');
                        isDebug = false;
                    }
                }
    
                return result;
            }
        });
    });
    

    还有一些要补充的,就是odoo中的开发者全是是只有admin才有的,所以在代码里面增加了是否是admin的判断,所以debug选项只会在admin的时候才会显示在顶部的菜单栏上,其他用户是没有添加的。

    最后,我是一名odoo前端开发者,对odoo后端只是了解一点,主要是前端方面有些研究,一些widget、列表、列表按钮自定义、或是列表limit的自定义等有一些研究并在项目中实际使用,也比较熟悉odoo的网页制作开发,另外本人喜欢使用odoo,结合工业生产企业开发app应用,包括工业经常使用到的扫码或是条码使用app打印等功能开发,目前实际开发出一款app产品在大型上市公司(具体联系时说明)的车间使用app,如何需要合作自定义开发odoo页面活动app开发的,可以联系我。
    taony:15068334016 邮箱:[email protected]


  • 管理员

    感谢分享!
    建议用```把代码包住,以保持格式并实现语法高亮。我帮你改一下。



  • @digitalsatori 好的,谢谢,下次我知道了。



  • @鲍永道
    isDebug这个值是从哪里获取的?这个值在初始化的时候又是在哪里?



  • @hui 代码上有啊,自己设置的。



  • 测试了一下,很好用。谢谢分享!



  • @judy_zh 嗯嗯,别客气,大家多交流多交流。