【零散技术】5分钟完成Odoo18 登陆页面全自定义
序言:时间是我们最宝贵的财富,珍惜手上的每个时分
从最初的tinyERP到Open ERP,再由OpenERP到Odoo,虽然UI已经过了多次大改,Odoo登录界面依旧丑陋,同时还有各种Odoo版权信息,对于定制项目而言是不友好的。
今天以Odoo18为例,我们来做一个简单的即插即用的修改。
话不多说,直接上代码
新建文件:views/login_template.xml:
<?xml version="1.0" encoding="utf-8"?>
<odoo><template id="login_layout" inherit_id="web.login_layout" name="web Login Inherit"><xpath expr="//*[@class='text-center small mt-4 pt-3 border-top']"position="attributes"><attribute name="style">display:none</attribute></xpath><xpath expr="//*[@t-attf-class='card border-0 mx-auto bg-100 {{login_card_classes}} o_database_list']"position="attributes"><attribute name="style">max-width: 500px;margin-top:4rem; opacity: 0.8;</attribute></xpath></template><template id="ro_login"><t t-call="web.login_layout"><style>#wrapwrap{<!-- background-color:#1c7bd4 !important;-->background-image:url(/模块名称/static/src/login.png);"}</style><form t-attf-class="oe_login_form" role="form" t-attf-action="/web/login"method="post" onsubmit="this.action = '/web/login' + location.hash"><input type="hidden" name="csrf_token" t-att-value="request.csrf_token()"/><div class="mb-3 field-login"><label for="login" class="form-label d-flex justify-content-between">用户名</label><input type="text" placeholder="用户名" name="login" t-att-value="login" id="login"class="form-control" required="required" autocapitalize="off" autocomplete="username"/></div><div class="mb-3"><label for="password" class="form-label d-flex justify-content-between">密码</label><input type="password" placeholder="密码" name="password" id="password" class="form-control"required="required" autocomplete="current-password"t-att-autofocus="'autofocus' if login else None" maxlength="4096"/></div><p class="alert alert-danger" t-if="error" role="alert"><t t-esc="error"/></p><p class="alert alert-success" t-if="message" role="status"><t t-esc="message"/></p><div class="oe_login_buttons text-center gap-1 d-grid mb-1 pt-3"><button type="submit" class="btn btn-primary">登录</button></div></form></t></template></odoo>
引入视图:__manifiest__.py
''''data': ['views/login_template.xml',],
'''
新建 static/src文件夹,放入 login.png,此为背景图片,自己选素材即可。
在模块中做如上几步,即大功告成。