【新手bug营】


1、点击菜单按钮,报错:No default view of type ' form' could be found!

原因:action的view_model中少加了form或者form前后有空格。特别注意,不能有空格<field name="vie​w_mode">tree,form</field>


2、启动服务或升级模块,报错:KeyError: 'report.stock.label_lot_template_view'

解决方案:升级stock模块


3、显示日期少8个小时,或者有GMT字样

前端解决方案:

flowlogs.js

DateTime.DATETIME_FULL
修改为:DateTime.DATETIME_MED_WITH_SECONDS

后端解决方案:

tz = pytz.timezone('Asia/Shanghai')
res[field_rec] = res[field_rec].astimezone(tz).strftime("%D %T")


4、domain中的 =?

picking_type_id = fields.Many2one(
'stock.picking.type', 'Operation Type',
required=True, check_company=True,
domain="[('code', '=?', picking_type_code_domain)]")

表示如果 picking_type_code_domain 有值,则应用等于 (=) 的条件;如果没有值,则应用不存在条件 (即允许任何值)


5、模块错误导致无法启动odoo或者无法卸载模块

(1) python odoo-bin shell -c odoo.conf

(2) self.env['ir.module.module'].search([('name', 'like', '模块')]).button_immediate_uninstall()


6、升级模块,tracking属性字段报错,需要先执行下面语句

delete from mail_tracking_value

where field_id=(SELECT id from ir_model_fields where name='remaining_amount' and model='tx.budget.report');


7、pycharm的debug模式启动不了

【错误】Connected to pydev debugger (build 233.13763.11)

​    Process finished with exit code -1073740940 (0xC0000374)

【解决】找到文件odoo/tools/translate.py

增加一行代码:ln = ln[0:ln.index(".")]


def resetlocale():
# locale.resetlocale is bugged with some locales.
for ln in get_locales():
try:
ln = ln[0:ln.index(".")]
return locale.setlocale(locale.LC_ALL, ln)
except locale.Error:
continue


8、列表视图,左侧的筛选Panel,可以分组和多选

<searchpanel>
    <field name="categ_id" string="Categories" select='multi' enable_counters="1" groupby='parent_id'/>
</searchpanel>


9、在window上卸载应用模块(可以自动关联卸载)

  • 启动服务:python odoo-bin  shell -c  txodoo.conf -d txnew2025  写自己的配置文件和数据库名字
  • 查询要卸载的模块:zz = env['ir.module.module'].search([('name','=', 'account'),]) 一次只能写一个
  • 卸载应用:zz.button_immediate_uninstall()


赵世杰 2024年12月24日
分析这篇文章

存档
登录 留下评论
logrotate 日志文件管理工具