首页 > 其他 > 详细

odoo10实现单点登陆绕过登陆集成页面

时间:2019-11-14 16:12:27      阅读:234      评论:0      收藏:0      [点我收藏+]

背景:由于需要集成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

 

 

odoo10实现单点登陆绕过登陆集成页面

原文:https://www.cnblogs.com/xiaozhuxing/p/11857543.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!