odoo框架有时数据库不对外开放 或者 sql不好解决 需要刷脚本 可以尝试下odoorpc 和 xmlrpc
import odoorpc username = username # 用户登录名 url = url # 服务器ip pwd = pwd # 用户的登录密码,测试时请换成自己的密码 dbname = dbname # 数据库帐套 odoo = odoorpc.ODOO(url, port='8069') # 使用odoorpc odoo.login(dbname, username, pwd) # 用上面的账号登录 model = odoo.env[''] # 相当于self.env[''] 获取指定model的实例 model.search([()]) # 可以获取到筛选条件的ids model.search_read([()]) # 这个可以获取到全部字段 model.browse(id) # 获取指定id的对象 之后就和py里面一样
还有xmlrpc 比odoorpc复杂点
import xmlrpclib
username = 'username' # 用户登录名
pwd = 'pwd' # 用户的登录密码,
dbname = 'dbname' # 数据库帐套名,
# 第一步,取得uid
common = xmlrpclib.ServerProxy('http://localhost:8069/xmlrpc/2/common')
uid = common.authenticate(dbname, username, pwd, {})
model = xmlrpclib.ServerProxy('http://localhost:8069/xmlrpc/object')
# 调用sale.order对象的search_read方法查看所有数据
res = model.execute(dbname, uid, pwd, 'sale.order', 'search_read', [])
print res