如何禁用附件表单视图 odoo11 中的清除按钮?

How to disable clear button in attachment form view odoo11?

我正在尝试禁用附件表单中的清除按钮。 我认为这是js代码。我搜索了一些 js 代码,但没有找到。

这个问题有什么提示吗??

这是清除按钮的图片

如果您想在 Odoo 中删除整个二进制字段小部件的按钮,您可以 "extend" 该小部件的 QWeb 模板,即:

<t t-name="FieldBinaryFile">
    <a t-if="widget.mode === 'readonly'" href="javascript:void(0)" class="o_form_uri"/>

    <div t-if="widget.mode !== 'readonly'" class="o_field_binary_file">
        <input type="text" class="o_input"
            readonly="readonly"
            t-att-name="widget.name"
            t-att-tabindex="widget.attrs.tabindex"
            t-att-autofocus="widget.attrs.autofocus"/>

        <button type="button" class="btn btn-sm btn-primary o_select_file_button" title="Select">Upload your file</button>
        <button type="button" class="btn btn-sm btn-default fa fa-pencil o_select_file_button" title="Select"/>
        <button type="button" class="btn btn-sm btn-default fa fa-trash-o o_clear_file_button" title="Clear"/>

        <span class="o_form_binary_progress">Uploading...</span>
        <t t-call="HiddenInputFile">
            <t t-set="fileupload_id" t-value="widget.fileupload_id"/>
            <t t-set="fileupload_style" t-translation="off">overflow-x: hidden</t>
        </t>
    </div>
</t>

您可以扩展 QWeb 模板,但必须将它们加载到 qweb 项下的清单文件中。

xml 文件通常在 /static/src/xml

的模块中
<templates>
    <t t-name="web.FieldBinaryFile" t-extend="base.FieldBinaryFile">
        <t t-jquery="button[title='Clear']"
            t-operation="replace" />
    </t>
</templates>

以及清单的部分

{
    'name': 'remove button in binary widget',
    # and so on
    'depends': [
        'base',
    ],
    'qweb': [
        'static/src/xml/remove_button.xml'
    ],
    # and so on
}

另一种仅扩展此表单视图的方法是在填充时将字段动态设置为只读。

<record id="view_attachment_form" model="ir.ui.view">
    <field name="name">disable remove button if filled</field>
    <field name="model">ir.attachment</field>
    <field name="inherit_id" ref="base.view_attachment_form" />
    <field name="arch" type="xml">
        <field name="datas" position="attributes">
            <attribute name="attrs">{'invisible':[('type','=','url')], 'readonly':[('datas', '!=', False)]}</attribute>
        </field>
    </field>
</record>

及部分原图:

<sheet>
    <label for="name" class="oe_edit_only"/>
    <h1>
        <field name="name"/>
    </h1>
    <group>
        <group>
            <field name="type"/>
            <field name="datas" filename="datas_fname" attrs="{'invisible':[('type','=','url')]}"/>
            <field name="datas_fname" invisible="1" attrs="{'invisible':[('type','=','url')]}" class="oe_inline oe_right"/>
    <!-- and so on -->