Skip to content

Instantly share code, notes, and snippets.

@dreispt
Created November 19, 2014 11:04
Show Gist options
  • Save dreispt/d14e424540faedb3ea88 to your computer and use it in GitHub Desktop.
Save dreispt/d14e424540faedb3ea88 to your computer and use it in GitHub Desktop.
Odoo Shell: run Odoo commands without a server RPC connection
"""
Setup:
Assuming Odoo 8.0 sources at ~/odoo:
$ cp odoo-sh.py ~/odoo
$ cd ~/odoo
$ python -i odoo-sh.py
Usage example:
>>> env = connect('my-db-name')
>>> Users = env['res.users']
>>> Users.search()
>>> Users.browse(1).name
u'Administrator'
"""
from __future__ import print_function
from openerp.modules.registry import RegistryManager
from openerp.api import Environment
def connect(dbname='trunk', uid=1, context=None):
r = RegistryManager.get(dbname)
cr = r.cursor()
Environment.reset()
env = Environment(cr, uid, context or {})
print('Connected to %s with user %s %s'
% (dbname, env.uid, env.user.name))
return env
if __name__ == '__main__':
print(__doc__)
@nordiccoding
Copy link

hi jeffery, late answer anyhow I was searching for same ... just add !
!./odoo/odoo-bin shell -c odoo_oca.conf --log-level=error

@YYMPhoo
Copy link

YYMPhoo commented Mar 12, 2019

Creating record from this terminal cannot be seen from ui(actually not created but it return id)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment