Hỏi [Lập trình module] Cách lọc thông tin hiện thị

Thảo luận trong 'Hỏi - Đáp' bắt đầu bởi Duong, 22/8/13.

  1. Duong New Member

    Chào các bạn, hôm nay mình lại nhờ vả các bạn về cách lọc thông tin hiện thị trên một ComboBox (thể hiện của many2one).
    Ví dụ, trong mục xe mình có những chiếc xe có thuộc tính như sau:
    mã xe trọng tải
    001 5
    002 7
    003 9
    Ở mục chọn xe (ở một lớp khác có tham chiếu đến lớp xe) thì làm sao mình có thể giới hạn được thông tin hiện thị chỉ là những chiếc xe có trọng tải > 7.
  2. thinhgr Active Member

    Định nghĩa hàm để trả về cặp tương ứng: def_get_selection(self,cursor,user_id,context=None):
    return (
    ('choice1', 'This is the choice 1'),
    ('choice2', 'This is the choice 2'))

    _columns = {
    'sel' : fields.selection(
    _get_selection,
    'What do you want ?')
    }

    Giá trị hàm return
    (('key_or_value', 'string_to_display'), ... )
    Tham khảo : https://doc.openerp.com/v6.0/developer/2_5_Objects_Fields_Methods/field_type.html/
    Cái này xem phía dưới bác bruce hướng dẫn: http://terp.vn/forum/threads/qu%E1%BA%A3n-l%C3%BD-date-theo-th%C3%A1ng-n%C4%83m.238/
  3. huy_nguyen_41 Member

    thêm thuộc tính domain vào trọng định nghĩa của trường đó trong columns. ví dụ: '...': fields.many2one(..., domain="[('state','=','5')]")
    bruce.nguyen thích bài này.

Chia sẻ trang này