1.检查业务逻辑中的错误,终止代码执行,显示错误或警告信息: raise osv.except_osv(_('Error!'), _('Error Message.')) 示例代码: #删除当前销售单,需要验证销售单的状态 def unlink(self, cr, uid, ids, context=None): for rec in self.browse(cr, uid, ids, context=context): if rec.state not in ['draft']: raise…
1 Traceback (most recent call last): File , in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File , in dispatch result = self._call_function(**self.params) File , in _call_function return checked_call(self.db, *args,…
odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_report" class="btn btm-sm button oe_highlight" style="font-size:12px;">确定</div> <button special="cancel" string=…
odoo开发笔记 -- 搜索视图继承扩展…
odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件…
附件上传基本原理实现,可以参考这篇: https://www.cnblogs.com/ljwTiey/p/7348291.html http://blog.csdn.net/wangnan537/article/details/41903159 首先我们看一下odoo界面默认的附件功能,有木有感觉不是很友好!囧 :) 下面给小伙伴们介绍另一种odoo自带的附件管理方式! 首先,在你的模型中增加如下定义: ##############################################…
1.异常错误处理与日志审计 5.1.日志审计系统安全规则 1 日志系统能够记录特定事件的执行结果(比如 成功或失败). 确保日志系统包含如下重要日志信息: 1.  日志发生的时间: 2.  事件的严重等级: 3.  能够标识该事件为安全事件的标签: 4.  导致事件产生的对象: 5.  导致事件产生的IP地址: 6.  事件的结果(成功或失败): 7.  关于事件的描述. 2 如果使用浏览器查看日志,确保先对日志数据进行净化.(item1.2请参考附录11.8) 3 不要在日志中存储任何敏感数据…
场景描述: 恢复Odoo数据后,抛出错误导致无法进入页面 -- ::, INFO aeo odoo.addons.base.ir.ir_attachment: _read_file reading /var/lib/odoo/filestore/aeo//576746a590a5ec2384a9428a907bc44e9117ee1e Traceback (most recent call last): File , in _file_read r = open(full_path,'rb').…
可能的原因: 排查顺序: 1.id在视图中的加载顺序问题. 可能是:__manifest__.py文件,view文件先后加载顺序有问题:也可能是:xml 视图文件中,被引用的id出现在了引用id的下方(注意:odoo服务启动后,页面的加载顺序是从上到下). 2. 上次的代码中的id已经注册进了系统,这个时候解决方式,可以通过前台开发者模式,找到相应的引用视图ID,把它注释掉,再次升级. 3.  外部Id 相互引用 陷入相互引用,导致ID相互依赖,解决方式:方式1 单独扩展视图,扩展相互引用的视图…
上边rase 加3种写法,都能实现,跑出警告的功能.…