跳至內容
選單
此問題已被標幟
1 回覆
8935 瀏覽次數

Hello! Help me on how to constraint a number of characters in a fields.Char? 

and number must be minimum of 12 and maximum of 15 characters

here's my models.py

bir_id = fields.Char(size=15)

def _check_length(self, cr, uid, ids, context=None):
     for record in self.browse(cr, uid, ids):
        if record.bir_id < 12:
        return False
    return True
_constraints = [(_check_length, 'Error', ['bir_id'])]


when i enter less than 12 characters, there's no error. What do you think is the problem? 

Thank you! 

頭像
捨棄
最佳答案

Hi Nissan,

To check the length (number of characters in your string), you should use len(your_string).

Ex:

if len(record.bir_id) < 12 or len(record.bir_id) > 15:
# raise exception or return False
return False

Hope this will help you.

頭像
捨棄
作者

Thank you for fast reply!