OpenERP 7.0 Kanban View - Невозможно показать групповой столбец без данных

Я создал представление канбана в модуле,
я установил свойство default_group_by в канбане с полем state. Состояние содержит:

[('new','Waiting Queue'),('in_progress','In Progress'),('done','Finished')]

но там, где нет данных в определенном состоянии, столбец для состояния не появится, пока я не создам данные с этим состоянием.
есть ли способ обойти эту проблему, парень? спасибо..


person Edxz    schedule 06.09.2013    source источник


Ответы (2)


Вы можете использовать метод _group_by_full. Этот метод должен возвращать (name_get записей, {id: fold}) для включения в _read_group, если они сгруппированы по этому полю. Конечно, вы можете вернуть все значения нужного вам столбца, даже если для этого столбца еще нет данных. Вы можете увидеть наглядные примеры _group_by_full в project.py и crm_lead.py.

person am_technix    schedule 05.05.2014

Вы можете добиться этого с помощью словаря _group_by_full, чтобы добавить его в свой класс osv.osv.

Например, проверьте мой пример кода:

def _read_group_state_ids(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None):

    stage_obj = self.pool.get('produce.book.stage')
    order = stage_obj._order

    if read_group_order == 'stage_id desc':
        order = "%s desc" % order
    # perform search
    stage_ids = stage_obj._search(cr, uid, [], order=order, access_rights_uid=access_rights_uid, context=context)
    result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context)
    # restore order of the search
    result.sort(lambda x, y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0])))

    fold = {}
    for stage in stage_obj.browse(cr, access_rights_uid, stage_ids, context=context):
        fold[stage.id] = stage.fold or False
    return result, fold

_group_by_full = {
    'stage_id': _read_group_state_ids
}

Результатом является список кортежей, содержащих (id, name), а fold - это словарь пары {id: bool}, что, если каждый из них будет истинным, этот столбец будет свернут.

person NrNazifi    schedule 13.11.2014