This question has been flagged
2 Replies
3870 Views

Hello everybody, In many2one field, when I put some caracters the autocomplete return all strings contains these caracters. For example if I put "ma" the autocomplete return ("image","manager","roma" ...). What I want is that the autocomplete must return exactly the sting which start with for example "ma" not witch contains "ma" in everywhere (at first, middle or last). So where and which file I must modify. Thank you.

Avatar
Discard

Do you need this feature for all many2one fields or only for a particular object ?

Author

I need it for a particular object.

Best Answer

I suggest you to override the name_search() method of your object like that:

def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100):
    if not args:
        args = []
    if context is None:
        context = {}
    ids = []
    name = name + '%'
    cr.execute("SELECT id FROM your_object_table WHERE name like %s", (name,))
    ids = cr.dictfetchall()
    return self.name_get(cr, uid, ids, context)

let me know if it works

Avatar
Discard
Author

Thank you very much brother :) it works perfectly ;) thanks again.

hey should we create another table for that field?

hey should we create another table/class for that field? I need it for particular object

hey should we create another table/class for that field? I need it for particular object

Author Best Answer

I need it for a particular object.

Avatar
Discard