• odoo开发笔记 -- 如何隐藏视图界面的创建、导入、导出、复制、删除


    场景描述:

         odoo开发过程中,有时会遇到客户有这样的需求: 需要将相应界面的odoo自带的按钮or服务器动作隐藏掉,

         常见的需求就是隐藏界面的:“创建”、“导入”、“导出”、“复制”、“删除”。。。

         如何实现呢?其实odoo封装了特定的写法,如果客户需求是静态将上述功能按钮隐藏掉,不用修改前端代码,

         加上指定的参数就可以;如果客户需求是要根据单据的某个状态,动态隐藏/显示上述按钮,则需要修改odoo前端代码。

         根据字段状态,动态隐藏创建&编辑按钮,参考:https://www.cnblogs.com/hellojesson/p/9035739.html

         这里我们介绍下,静态需求的实现方式。

    实现方式:

        开始之前,我们先简单说明下odoo视图几个功能按钮的位置。

        odoo最主要的两个视图,Tree列表视图和Form表单视图,

      (1)Tree列表视图,默认显示的功能按钮:"创建" “导入”  ,勾选相应单据记录后,服务器动作显示:“导出”,“删除”。

             列表视图隐藏这些按钮,只需在列表视图代码中增加相应参数即可:

    <tree create="false" import="false" export="false" delete="false">

      (2)Form表单视图,默认显示功能按钮:“编辑”,“创建”,服务器动作显示:“删除”,“复制”

              隐藏上述相应的按钮,在Form views相应位置添加如下参数:

              edit="false" --禁止编辑  create="false" ----禁止创建  duplicate="false" --禁止复制  delete="false" --禁止删除

    <record id="test_view_form" model="ir.ui.view">
                <field name="name">test.view_form</field>
                <field name="model">test.test</field>
                <field name="type"> </field>
                <field name="arch" type="xml">
                    <form string="测试" edit="false" create="false" duplicate="false" delete="false">
                        <sheet>
                            <group>
                                 <field name="user_name"/>
                                <field name="create_date"/>
                            </group>
                        </sheet>
                    </form>
                </field>
  • 相关阅读:
    虚拟机调用本机数据库发生错误
    VS2010添加虚拟机发布的WebService引用
    IIS发布错误及解决
    JSON.parse()与JSON.stringify()的区别
    数组去重
    React性能优化 PureComponent
    JS逻辑题 技术点: 1). 变量提升 2). 函数提升 3). 预处理 4). 调用顺序
    React组件间信息传递方式
    css/css3实现未知宽高元素的垂直居中和水平居中
    关于setTimeout的一个逻辑题
  • 原文地址:https://www.cnblogs.com/hellojesson/p/12143456.html
Copyright © 2020-2023  润新知