Projet

Général

Profil

0001-schemas-add-an-absent_label-property-to-Dimension-38.patch

Benjamin Dauvergne, 28 novembre 2019 21:29

Télécharger (1,86 ko)

Voir les différences:

Subject: [PATCH] schemas: add an absent_label property to Dimension (#38067)

 bijoe/schemas.py | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
bijoe/schemas.py
21 21
import collections
22 22

  
23 23
from django.utils import six
24
from django.utils.translation import ugettext_lazy as _
24 25

  
25 26
from .relative_time import RelativeDate
26 27

  
......
137 138
class Dimension(Base):
138 139
    __slots__ = ['name', 'label', 'type', 'join', 'value', 'value_label',
139 140
                 'order_by', 'group_by', 'filter_in_join', 'filter', 'filter_value',
140
                 'filter_needs_join', 'filter_expression']
141
                 'filter_needs_join', 'filter_expression', 'absent_label']
141 142
    __types__ = {
142 143
        'name': str,
143 144
        'label': unicode,
......
153 154
        'filter_in_join': bool,
154 155
        'filter_value': str,
155 156
        'filter_needs_join': bool,
157
        'absent_label': unicode,
156 158
    }
157 159

  
158 160
    label = None
......
166 168
    filter_expression = None
167 169
    filter_needs_join = True
168 170
    members_query = None
171
    absent_label = None
172

  
173
    def __init__(self, **kwargs):
174
        super(Dimension, self).__init__(**kwargs)
175
        if not self.absent_label:
176
            if self.type in ('integer', 'string'):
177
                self.absent_label = _('None')
178
            elif self.type in ('boolean',):
179
                self.absent_label = _('N/A')
180
            else:
181
                raise NotImplementedError('not absent label for type %r' % self.type)
169 182

  
170 183
    @property
171 184
    def dimensions(self):
172
-