""" An environment wraps data for ORM records: - :attr:`cr`, the current database cursor; - :attr:`uid`, the current user id; - :attr:`context`, the current context dictionary. It also provides access to the registry, a cache for records, and a data structure to manage recomputations. """
Environment类提供了对ORM对象的封装,同时提供了对注册类的访问,记录集的缓存,以及管理重计算的数据结构.
对于继承了Model的类来说可以直接通过self.env对Environment进行操作.
属性列表:
1.user:返回当前用户
self.env.user
2.lang:返回当前语言代码
self.env.lang
3.in_draft:返回是否处于草稿模式
self.env.in_draft
4.in_onchange:返回是否处于'onchange'草稿模式
self.env.in_onchange
另外还有cr,registery,cache,prefetch,computed,dirty,todo,mode,all等属性
应用说明:
1.利用env[model]获取类对象:
self.env['ir.model'].search([('state', '!=', 'manual')])
2.利用cr执行sql语句:
self.env.cr.execute(query, (value,))