如何在 ODOO 中将开发人员模式设置为默认值



我在Odoo中使用了很多开发人员模式,所以我每次需要它时都必须去配置并设置dev mode有没有办法将此开发器模式设为默认模式非常感谢

您可以非常轻松地启用Odoo开发模式!

您可以使用名为Odoo调试的chrome扩展程序:

奥多调试

或者一个名为Odoo简单调试的Firefox扩展:

Odoo易于调试

问候

默认情况下,您不需要Chrome或Firefox扩展程序即可在Odoo中激活和设置调试模式。您可以使用Odoo框架执行类似于以下代码的操作。这是取自这个Odoo模块,至少在Odoov8中工作

  • 使用设置值创建类

    class DevelopmentToolsConfigSettings(models.TransientModel):
    _name = 'development_tools.config.settings'
    development_mode = fields.Boolean(
    string='Development mode as default',
    required=False,
    readonly=False,
    index=False,
    default=True,
    help='Set development mode by default'
    )
    @api.model
    def get_default_values(self, values):
    return dict(
    development_mode=self.get_debug_mode(),
    )            
    def get_debug_mode(self):
    param = self._get_parameter('development_mode')
    if param:
    value = self._safe_eval(param.value, bool)
    else:
    value = self._defaults['development_mode']
    return value
    def _set_debug_mode(self):
    param = self._get_parameter('development_mode', force=True)
    param.value = unicode(self.development_mode)         
    
  • 覆盖控制器web.Home并添加自动调试模式行为:

    from openerp.http import route, request, Controller, redirect_with_hash
    import openerp.addons.web.controllers.main as webmain
    from openerp.tools.translate import _
    from logging import getLogger
    import werkzeug
    _logger = getLogger(__name__)
    
    class Home(webmain.Home):
    @route()
    def web_client(self, s_action=None, **kw):
    result = None
    if not request.debug and request.db and self._get_debug_mode():
    _logger.info(self._debug_message)
    result = self._build_debug_response()
    return result or super(Home, self).web_client(s_action, **kw)
    def _get_debug_mode(self):
    config = request.env['development_tools.config.settings']
    debug = config.get_debug_mode()
    return debug == True
    def _build_debug_response(self):
    result = None
    try:
    query = request.params
    query.update({'debug': u''})
    url = '/web?' + werkzeug.url_encode(query)
    result = redirect_with_hash(url)
    except Exception as ex:
    _logger.error(self._error_response.format(ex))
    return result
    _debug_message = _(u'Auto-redirect to enter in debug mode')
    _error_response = _(
    u'The debug response could not be built.n'
    u'System has said: {}'
    )
    

最新更新