1

Odoo インターフェイスの左側のサイドバーにあるメニューにウィンドウ アクションを関連付けたいと考えています。上部のメニュー バーに Academy という名前のメニューがあり、左側のサイドバーに "Academy Content" という名前の別のメニューがあります。こちらがインターフェースの画像です。

画像へのリンク:メニュー Odoo

「アカデミー コンテンツ」メニューには子がありません。ウィンドウ アクション (action_academy_teachers という名前) を [Academy Content] メニューに関連付けたいと考えています。ビュー (view.xml ファイル) で、2 つのメニューを定義しています。

<menuitem sequence="0" id="menu_academy" name="Academy"/>
<menuitem id="menu_academy_content" parent="menu_academy" name="Academy Content" action="action_academy_teachers"/>

問題は、「Academy Content」メニューをクリックできないことです。リンクではなく、静的なテキストのみです。しかし、子メニュー (「Academy Teachers」という名前) を「Academy Content」メニューに追加し、ウィンドウ アクション「action_academy_teachers」を「Academy Teachers」メニューに関連付けると、このメニューをクリックすると、このウィンドウ アクションがトリガーされます。

<menuitem sequence="0" id="menu_academy" name="Academy"/>
<menuitem id="menu_academy_content" parent="menu_academy"
          name="Academy Content"/>
<menuitem id="menu_academy_content_teachers"
          parent="menu_academy_content"
          action="action_academy_teachers" name="Academy Teachers"/>

しかし、「Academy Content」メニューをクリックすると、「action_academy_teachers」アクションがトリガーされます。これを行うために別の子メニューを作成したくありません。

ウィンドウ アクション コード:

<record id="action_academy_teachers" model="ir.actions.act_window">
  <field name="name">Academy teachers</field>
  <field name="res_model">academy.teachers</field>
</record>

追加情報:
Odoo: バージョン 8
OS: Ubuntu 14.04 32 ビット

4

1 に答える 1

1

通常、メニューのアーキテクチャとその構造のため、デフォルトでは機能しません。

したがって、アクションへのリンクを追加するには、「web」モジュールの「web.menu_secondary」テンプレートをオーバーライドして、メニューの表示方法を変更する必要があります。

これを実現するには、このセクションを XML ファイルに追加する (または「web」モジュールに依存する新しいモジュールを作成する) だけです。

<template id="menu_secondary" inherit_id="web.menu_secondary">
        <div class="oe_secondary_menu_section" position="replace">
            <div class="oe_secondary_menu_section">
                <span t-if="not menu['action']">
                    <t t-raw="menu['name']"/>
                </span>
                <span t-if="menu['action']">
                    <t t-call="web.menu_link"/>
                </span>
            </div>
        </div>
</template>

これが役立つことを願っています!

于 2015-05-18T13:38:46.883 に答える