【问题标题】:How to add css files to a custom module in Odoo?如何将 css 文件添加到 Odoo 中的自定义模块?
【发布时间】:2015-09-29 14:36:23
【问题描述】:

如何将 css 文件添加到我的自定义模块以更改 xml 视图?我找到了this post,但解决方案不起作用。

我想修改我模块中的所有元素,例如表单、列表、输入等。

【问题讨论】:

    标签: css xml odoo-8 odoo odoo-view


    【解决方案1】:
    1. 您必须在此路由中创建 css 文件:/module_name/static/src/css/module_name.css。文件示例:

       .openerp .classname{
           margin: 12px 0px 12px 0px;
       }
      
    2. 使用此内容创建文件/module_name/views/module_name.xml

       <?xml version="1.0"?>
       <openerp>
           <data>
               <template id="assets_backend" name="module_name assets" inherit_id="web.assets_backend">
                   <xpath expr="." position="inside">
                       <link rel="stylesheet" href="/module_name/static/src/css/module_name.css"/>
                   </xpath>
               </template>
           </data>     
       </openerp>
      
    3. 将 xml 文件添加到您的 __openerp.__py

       'data': [
           'views/module_name.xml',
       ],
      
    4. 将类添加到视图中的元素

       <div class="classname">                            
           <field name="field_name" class="other_class"/>
       </div>
      

    【讨论】:

    • 感谢 ChesuCR,它有效。其他问题,是否强制放置inherit_id="web.assets_backend"?并且总是 web.assets_backend? name 属性是约定写'module_name assets'还是'assets'不是强制的?
    • inherit_id="web.assets_backend" 是必填项,例如,如果要向报表添加样式,则必须从另一个模板继承。我认为name字段不是必须这样写的,但是如果您检查其余模块中的编写方式,大多数都是这样的
    • 它将适用于整个ERP,包括所有表单视图和所有树视图,如何仅限制一个模块?
    • 您可以将 css 类添加到您想要更改的对象中,正如我在回答中所写的那样
    猜你喜欢
    • 2013-08-02
    • 1970-01-01
    • 2018-06-21
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 2014-06-03
    • 1970-01-01
    • 2011-12-21
    相关资源
    最近更新 更多