@fang 在 odoo18多线程运行日志老是提示内容,和规则权限的domain定义 中说:
先说多线程这个,这个是主要的问题
服务在linux上运行的,外网访问的时候,使用的是映射,通过域名映射到服务器上的8072端口,没有使用nginx。问题出现,配置文件中使用了workers = 8运行,
首先,多线程的说法是错误,当配置了workers >1 时,Odoo实例工作在多进程模式下。自行查阅“多进程”和“多线程”的区别。
工作在多进程模式下的Odoo一般需要配置Nginx这种反向代理。否则,每个进程的长轮询websocket服务端口都会竞争绑定到同一个端口(默认为8072),只有第一个成功,其余失败,后续进程因无法绑定事件端口,触发 WebSocket 初始化失败,导致 RuntimeError。
面试官查看是自己的培训计划
[('department_id', 'child_of', user.employee_id.department_id.id)]
服务启动的时候老是会有一个警告的日志
2025-05-29 15:14:00,168 12112 WARNING qweasd odoo.osv.expression: Unexpected domain >[('department_id', 'child_of', False)], interpreted as False
因为一个用户可能没有对应的employee,或者这个用户对应的employee没有设置department,那样的话user.employee_id.department_id.id 都会返回False