0
myモジュールpost_load
の後に 'bus.bus'モデルを取得する必要があります。しかし、私は例外を取得:HTTP要求の外でodoo 10環境を取得する
Traceback (most recent call last):
File "/path/to/file.py", line 19, in __call__
self.event_bus.sendone('channel', 'message')
File "/opt/odoo10/addons/bus/models/bus.py", line 70, in sendone
self.sendmany([[channel, message]])
File "/opt/odoo10/addons/bus/models/bus.py", line 54, in sendmany
self.sudo().create(values)
File "/opt/odoo10/odoo/models.py", line 4870, in sudo
return self.with_env(self.env(user=user))
File "/opt/odoo10/odoo/api.py", line 781, in __call__
return Environment(cr, uid, context)
File "/opt/odoo10/odoo/api.py", line 726, in __new__
env, envs = None, cls.envs
File "/opt/odoo10/odoo/tools/func.py", line 111, in __get__
return self.fget.__get__(None, owner)()
File "/opt/odoo10/odoo/api.py", line 699, in envs
return cls._local.environments
File "/opt/odoo10/venv/local/lib/python2.7/site-packages/werkzeug/local.py", line 72, in __getattr__
raise AttributeError(name)
AttributeError: environments
私はこのような環境を取得してみてください:
registry = RegistryManager.get(db_name)
cursor = registry.cursor()
return Environment(cursor, None, context={})
を、どのように私は、HTTP要求の外に正しい環境を得ることができますか?
ただし、SUPERUSER_IDはどのように取得できますか? – triplustri
ドンをお持ちでない場合'スーパーユーザーIDを持っている場合はEnvironment.uidを渡します –
odoo 10を使用しています - AttributeError:タイプオブジェクト 'Environment'に属性 'uid'がありません – triplustri