Ich möchte für das hr_attendance Addon in odoo 9.Wie lege ich ein Menü Icon in odoo 9?
Ich werde erklären, die Schritte ein Menü-Symbol setzen, die ich getan habe:
eine Put es in addon_extra
erstellen hr_attendance_extendImportieren Sie das ursprüngliche Addon. Das ist "init Py":
import hr_attendance
die CSS erstellen und auf das Symbol setzen. Dies ist ein Teil der Datei "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; } ...
Verknüpfen Sie die Datei mit dem Add-on. Dies ist die Datei '' 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>
Setzen Sie die neuen Dateien in dem neuen Add-on Dieser Teil der Datei ist." OpenERP Py ":
{ ... '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"], }
.
den Behälter für das Menü Setzen Dies ist die Datei '' static/src/xml/attendance.xml ":
<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>
Im Original-Addon (hr_attendance) gibt es eine Funktion, die das Icon ins Menü bringt (glaube ich).
Es gibt in der Datei statisch/src/js/attendance.js und das ist die Linie in Frage:
SystrayMenu.Items.push(AttendanceSlider);
Das ist alles.
Ich weiß nicht, ob mir etwas fehlt. Der Code des Symbols erscheint im html, aber es ist mit ‚style =‚display: none‘‘
bearbeiten: Wenn ich die CSS-Datei ändern, um die Eigenschaft setzen „display: Block wichtig“, dann erscheint das Symbol im Menü, aber diese Korrektur ist nicht die richtige Lösung.