【实习第十天】odoo开发基础整合
2024-09-01 23:37:57
前言
发文时间是2019年7月19日。提一下学习odoo的感受,odoo目前在国内并不是很流行,且主流是在企业型软件,所以导致目前odoo在网上的文献很少,学习相对来说比其他框架吃力。以下为大家总结10天中得到的东西
res.users
- res.users是odoo中自带的模型(model),此模型在项目中是必不可少的存在。
- 倘若您需要自动获取登陆人的信息,那您得用res.users,例子如下
- 注: lambda 是匿名函数
User_id =fields.Many2one('res.users','姓名',default=lambda s: s.env.uid)
ORM
- ORM是odoo中常用到的操作,具体不细讲,因为这个其他博主已经有详细说明
- 例如create(创建),unlink(删除),read(读)等等
- 具体目的是当你在创建时,读取时等等,会进行哪些操作或者判断,按照自己的需求来要求
self.env
- self.env是我认为在odoo model层的核心,他能跨模型的去获取数据
- 具体用法self.env[model],model的意思是你要选择的模型,比如self.env[todo]
- 进入env[model]后,可以用search,search_count等,这个具体可以查看其他博主
- 所以整体起来就是 self.env[model].search(['字段','判断符号(=,!=等)','要求']),例如:
count = fields.Integer(string=u'数量')
res = self.env['要找的模型'].search([('count', '=',1)])- 该方法就会找到count数量等于1的列表。并返回列表的id
总结
以上3点中,最难找到的文献是self.env,只要掌握self.env而且有其他语言的基础,odoo的model层就很好掌握了
请假系统(项目)
one(demo)传送门
最新文章
- 通过命令创建vue项目
- guava 学习笔记 使用瓜娃(guava)的选择和预判断使代码变得简洁
- 【C#】【Thread】Semaphore/SemaphoreSlim信号量
- 如何解压.bz2文件包
- Android的Activity屏幕切换动画(一)-左右滑动切换
- IOS应用程序生命周期
- C++ 类的静态成员详细讲解[转]
- 【Open Search产品评测】- 来往,7天轻松定制属于自己的搜索引擎
- C++输入输出流的重载
- ruby 方法重载
- Transition 1
- 2017最新修复福运来完整运营中时时彩源码PC+手机版本功能齐全
- 使用python实现群发邮件
- findhex
- 关于layer的坑
- spring 应用
- [蓝桥杯]PREV-25.历届试题_城市建设
- IDEA修改git账号及密码的方法 ----绝壁好使
- 【SQLite】可视化工具SQLite studio
- eclipse中Cannot change version of project facet Dynamic Web Module to 3.0的问题解决