Odoo 10:删除或禁用新消息功能

Odoo 10 : Remove or disable the New Message function

有人可以提示如何 remove/disable 联系人模块中的新消息按钮吗?它似乎不是表单视图的一部分。

您可以通过 JS 和 CSS 完成此操作。在此按钮中有一个唯一的 class o_chatter_button_new_message 通过添加 CSS display:NONE[=12 删除此 class =]

那就是聊天小部件。您可以在视图中找到它以将其删除。搜索类似这样的内容:

<div class="oe_chatter">
    <field name="message_follower_ids" widget="mail_followers"/>
    <field name="message_ids" widget="mail_thread"/>
</div>

您可以使用如下方式将其从该视图中删除:

<record id="remove_partner_chatter_box" model="ir.ui.view">
    <field name="model">res.partner</field>
    <field name="inherit_id" ref="mail.view_emails_partner_info_form" />
    <field name="arch" type="xml">
        <xpath expr='//div[@class="oe_chatter"]' position='replace'>
            <p>XxXXXXXX</p>
        </xpath>
    </field>
</record>

找到了删除按钮的方法。添加了一个新模板来添加 css:

<openerp>
    <data>
    <!-- Adds all assets in Odoo -->
        <template id="assets_backend" name="contacts assets" inherit_id="web.assets_backend">
            <xpath expr="." position="inside">
        <!--These links will be called when loading your Odoo -->
                <link rel="stylesheet" href="/contacts_custom/static/css/css.css"/> 

            </xpath>
        </template>
    </data>
</openerp>

而 css 是:

.o_chatter_button_new_message
                {
                display:none !important;
                }

正如之前对此 post 的评论,它是聊天小部件的一部分。在Odoo v12中,完全是这样显示的:

<div class="oe_chatter">
    <field name="message_follower_ids" widget="mail_followers"/>
    <field name="activity_ids" widget="mail_activity"/>
    <field name="message_ids" widget="mail_thread"/>
</div>

"mail_thread" 小部件中包含发送消息和记录注释, 安排 activity 位于 "mail_activity" 下方,右侧按钮(附件和关注者)堆叠在 "mail_followers".

通过在自己的模型中继承模型 "mail.thread",只需在给定的 .xml 表单视图中添加小部件片段,忽略要隐藏的行就可以了。

为了更准确地分别隐藏部分(即隐藏关注者但仍显示附加按钮)我想这需要在 JS 方面处理,但仍在尝试。

希望它仍然有帮助。