zoukankan      html  css  js  c++  java
  • odoo10实现单点登陆绕过登陆集成页面

    背景:由于需要集成odoo平台在其他页面,需要绕开登陆。

    解决办法:开辟一个自动登陆的路由用与集成页面。

    1、修改web模块中controller/main.py文件,在class名字为Home中添加登陆路由:

    dbname:指定登陆数据库名称

    username:用户名

    password:密码

     1 @http.route('/web/login_(自定义路由名称)', type='http', auth="none")
     2     def web_login_(方法名称)(self, redirect=None, **kw):
     3         if request.httprequest.method == 'GET':
     4             old_uid = request.uid
     5             uid = request.session.authenticate('dbname', 'username', 'password')
     6             if uid is not False:
     7                 request.params['login_success'] = True
     8                 if not redirect:
     9                     redirect = '/web'
    10                 return http.redirect_with_hash(redirect)
    11             request.uid = old_uid
    12             values['error'] = _("Wrong login/password")
    13         return request.render('web.login', values)

    2、访问路由(访问前需要先调用清除cookie的方法)。在class名字为Session中添加页面访问路由的方法

    @http.route('/web/(访问路由名称)', type='http', auth="none")
        def logout_login(self, redirect='/web'):
            request.session.logout(keep_db=True)
            return http.redirect_with_hash('/web/login_(自定义路由名称)')  #从定向到上面定义的路由名称

    3、重启odoo、访问第二步中的路由就能直接进入odoo

  • 相关阅读:
    3.4.4 反射和泛型
    4.4.2 空合并操作符让比较不再痛苦
    NPOI导出EXCEL 打印设置分页及打印标题
    20、异常和状态管理
    14 字符字符串和文本处理
    15、枚举类型和标志位
    Oracle 数据库连接的一些坑
    17、委托
    《山鬼·九歌》——屈原
    每周一卦测感情,还是这么凶
  • 原文地址:https://www.cnblogs.com/xiaozhuxing/p/11857543.html
Copyright © 2011-2022 走看看