微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我的“分组依据”过滤器不显示选择字段中的字符串?

如何解决为什么我的“分组依据”过滤器不显示选择字段中的字符串?

我有一个名为 "range_time" 的 Selection 计算域,定义如下:

range_time = fields.Selection([
        (1,'0 - 2'),(2,'2 - 4'),(3,'4 - 8'),(4,'8 - 24'),(5,'24 - 48'),(6,'48 - 72'),(7,'> 72'),],string="Open range time",default=1,compute='compute_range_time')

def compute_range_time(self):
            for rec in self:
                # here rec.real_open_time is a float field that show the time in hours.
                if rec.real_open_time < 2.1:
                    rec.range_time = 1
                elif rec.real_open_time > 2 and rec.real_open_time < 4.1:
                    rec.range_time = 2
                elif rec.real_open_time > 4 and rec.real_open_time < 8.1:
                    rec.range_time = 3
                elif rec.real_open_time > 8 and rec.real_open_time < 24.1:
                    rec.range_time = 4
                elif rec.real_open_time > 24 and rec.real_open_time < 48.1:
                    rec.range_time = 5
                elif rec.real_open_time > 48 and rec.real_open_time < 72.1:
                    rec.range_time = 6
                elif rec.real_open_time > 72:
                    rec.range_time = 7

然后我为range_time创建了一个名为r_range_time的相关字段,定义如下:

r_range_time = fields.Selection([
        (1,related='range_time',store=True)

我创建此相关字段是因为我想使用此字段按过滤器进行分组。所以我做到了,并且有效。 XML:

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>
        <record id="account_search_view" model="ir.ui.view">
            <field name="name">Group By Tickets</field>
            <field name="model">website.support.ticket</field>
            <field name="inherit_id" ref="website_support.website_support_ticket_view_search"/>
            <field name="arch" type="xml">
                <filter name="group_by_user" position="after">
                    <filter name="group_by_range_time" string="Open time range" domain="[]" context="{'group_by':'r_range_time'}"/>
                 </filter>
             </field>
        </record>
    </data>
</odoo> 

唯一的问题是:

List view

不显示选择字段中的字符串。为什么会发生这种情况?有什么解决办法吗?

解决方法

尝试将 range_time 值更改为字符串:

range_time = fields.Selection([
    ('1','0 - 2'),('2','2 - 4'),('3','4 - 8'),('4','8 - 24'),('5','24 - 48'),('6','48 - 72'),('7','> 72'),],string="Open range time",default='1',compute='compute_range_time')

所有相关的和输入的值也应该在字符串中

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。