odoo开发一些问题

4 篇文章 0 订阅

odoo

odoo明细行字段值显示不全问题

在对应字段的field中加入style属性如下:

style="white-space: pre-wrap"

odoo明细行字段隐藏

在对应字段的field中加入attrs属性如下:

attrs="{'column_invisible': [('parent.state', 'in', ('draft', 'sales'))]}"

parent.state既是主表的状态字段

odoo明细行排序

在对应tree中加入以下属性

default_order='字段 desc 字段 asc'

odoo设置明细行字段宽度

在模块/static/src/css路径下创建css文件

.o_list_table th[data-name="要改的字段名"] {
    min-width: 50px !important;
    width: 50px !important;
}

在模块/static/src/xml路径下创建xml文件导入css,再将该xml注册到manifest

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <template id="assets_backend" name="production_plan_assets_backend" inherit_id="web.assets_backend">
        <xpath expr="." position="inside">
            <link rel="stylesheet" type="text/css" href="/production_plan/static/src/css/width.css"/>
        </xpath>
    </template>
</odoo>

Many2one字段自定义tree视图

1、单独写好自定义tree视图。
2、需要在Many2one 字段视图上context , 指向你需要的视图id

context="{'tree_view_ref': '模块名称.自定义视图的id'}"

odoo中js/javascript的继承扩展

可以去看看这篇

1.重写某方法

odoo.define('sales_extend.QtFormRenderer', function (require) {
    "use strict";

var FormRenderer = require('web.FormRenderer');

FormRenderer.include({
    _renderOuterGroup: function (node) {
        var self = this;
        var $result = $('<div/>', {class: 'o_group'});
        var nbCols = parseInt(node.attrs.col, 10) || this.OUTER_GROUP_COL;
        var colSize = Math.max(1, Math.round(12 / nbCols));
        if (node.attrs.string) {
            var $sep = $('<div/>', {class: 'o_horizontal_separator'}).text(node.attrs.string);
            $result.append($sep);
        }
        $result.append(_.map(node.children, function (child) {
            if (child.tag === 'newline') {
                return $('<br/>');
            }
            var $child = self._renderNode(child);
            $child.addClass('o_group_col_' + (colSize * (parseInt(child.attrs.colspan, 10) || 1)));
            if (self.$el.hasClass('o_sale_order')) {
                $child.addClass('qt_three_columns'); // 此处添加qt_three_columns 属性
            }
            return $child;
        }));
        this._handleAttributes($result, node);
        this._registerModifiers(node, this.state, $result);
        return $result;
    },
});
return FormRenderer;
});

2.xml将js文件导入,再将xml注册到manifest

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <template id="assets_backend" name="sales_extend_assets_backend" inherit_id="web.assets_backend">
        <xpath expr="." position="inside">
            <script type="text/javascript" src="/sales_extend/static/src/js/three_columns.js"/>
        </xpath>
    </template>
</odoo>

全局修改odoo页面属性或字段属性

1.使用f12检查找到要修改的属性class
在这里插入图片描述

2.在static/src/css下新建css文件,类似这样修改即可

.o_form_view .o_group .o_group_col_6{
    display: inline-block;
    width: 33%; !important;
    vertical-align: top;
}
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值