В моем модуле у меня есть поле many2one для выбора работников для конкретной задачи. В соответствии с требованием, что поле должно отображать только рабочих в отделе текущего пользователя. Просто это код,Odoo Filter many2one field on load
_columns = {
'employee_id': fields.many2one('hr.employee', 'Employee'),
}
Моя проблема заключается в том, как выполнить такую фильтрацию для поля при нагрузке? Я попытался использовать функциональное поле в домене в виде xml. но кажется, что функциональное поле получает свою ценность при сохранении конкретной записи.
Кроме того, я попытался добавить домен к самому полю, здесь get_current_user_department является функция возвращает Управление ИД
_columns = {
'employee_id': fields.many2one('hr.employee', 'Employee',domain=[('department_id.id','=',get_current_user_department)]),
}
Это порождает следующую ошибку,
TypeError: нет JSON сериализации
Любой предложение сделать эту работу? Спасибо
Спасибо. да, я пробовал с целочисленным полем, и он работает !! проблема в том, что поле также получает сохранение в базе данных. можем ли мы остановить это? – javatar
Сделайте поле 'department_id' только для чтения, и оно не будет сохранено. –
ОК. но для этого создается отдельный столбец. не так ли? – javatar