我想在odoo 9中为hr_attendance插件添加一个菜单图标。
我将解释我已经完成的步骤:
创建hr_attendance_extend并将其放入addon_extra
导入原始插件。这是" init .py":
import hr_attendance
创建css并放置图标。这是文件的一部分" static / src / css / slider.css":
...
.oe_systray .oe_attendance_signout {
float:right;
height: 32px;
width: 32px;
background: url(/hr_attendance_extend/static/src/img/emp-in32.png);
cursor: pointer;
}
...
将文件与插件链接。这是文件' views / hr_attendance.xml":
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="assets_backend" name="hr_attendance assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<link rel="stylesheet" href="/hr_attendance_extend/static/src/css/slider.css"/>
</xpath>
</template>
</data>
</openerp>
将新文件放入新插件中。这是文件的一部分&#34; openerp .py&#34;:
{
...
'depends': ['hr_attendance'],
'data': [
'hr_attendance.xml',
'views/hr_attendance.xml',
],
'demo': [],
'test': [],
'installable': True,
'auto_install': False,
#web
'qweb' : ["static/src/xml/attendance.xml"],
}
放入菜单的容器。这是文件&#39;&#39; static / src / xml / attendance.xml&#34;:
<template>
<t t-name="AttendanceSlider">
<li class="oe_attendance_status oe_attendance_nosigned" data-toggle="tooltip">
<div class="oe_attendance_signout"></div>
</li>
</t>
</template>
在原始插件(hr_attendance)中有一个功能,它将图标推送到菜单(我认为)。
文件中有static / src / js / attendance.js,这就是问题所在:
SystrayMenu.Items.push(AttendanceSlider);
这就是全部。
我不知道我是否遗漏了什么。该图标的代码显示在html中,但有&#39; style =&#34; display:none&#34;&#39;
修改: 如果我更改了属性&#34; display:block!important&#34;的css文件,则菜单中会出现图标,但该修复不是正确的解决方案。
答案 0 :(得分:0)
我找到了另一个问题的解决方案,该问题与此处的解决方案相同。
以下是新用户的步骤:
以管理员身份登录
员工&gt;员工&gt;创建按钮(填写名称)
选择“HR设置”标签&gt;相关用户 - &gt;创建和编辑(填写姓名和电子邮件)。
保存用户并保存员工。
进入开发者模式(用户菜单&gt;关于&gt;激活开发者模式)
设置&gt;用户&gt;选择新创建的用户&gt;编辑&gt;标记选项“出勤”
保存用户。
现在,图标出现了。