Compare commits
3 Commits
Author | SHA1 | Date |
---|---|---|
DiG | 2ffd43a3ee | |
DiG | b6e1d91fa0 | |
DiG | 480d40b24b |
21
remote.py
21
remote.py
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env python
|
||||
#!/usr/bin/env python3
|
||||
|
||||
## Usage:
|
||||
## ./remote.py <MODEL> <METHOD> [<param> [<param> [<param>]]] [+<opt>] [+<opt=value>]
|
||||
|
@ -12,7 +12,7 @@
|
|||
## to model names in L being a list with comma and no spaces.
|
||||
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import json
|
||||
import odoorpc # pip install odoorpc
|
||||
|
@ -110,12 +110,12 @@ def login( server = None, port = None, db = None, user = None, passwd = None ):
|
|||
if server:
|
||||
tsv( 'Server:', server )
|
||||
else:
|
||||
server = raw_input('Server address: ')
|
||||
server = input('Server address: ')
|
||||
|
||||
if port:
|
||||
tsv( 'Port:', port )
|
||||
else:
|
||||
port = raw_input('Port: ')
|
||||
port = input('Port: ')
|
||||
|
||||
odoo = odoorpc.ODOO( server, port=port )
|
||||
print( 'Connected to ' + server + ':' + port )
|
||||
|
@ -127,17 +127,17 @@ def login( server = None, port = None, db = None, user = None, passwd = None ):
|
|||
if db:
|
||||
tsv( 'Database:', db )
|
||||
else:
|
||||
db = raw_input('Choose database: ')
|
||||
db = input('Choose database: ')
|
||||
|
||||
if user:
|
||||
tsv( 'User:', user )
|
||||
else:
|
||||
user = raw_input('User: ')
|
||||
user = input('User: ')
|
||||
|
||||
if passwd:
|
||||
tsv( 'Password:', '****************' )
|
||||
else:
|
||||
passwd = raw_input('Password: ')
|
||||
passwd = input('Password: ')
|
||||
|
||||
|
||||
eprint( server, port, user, passwd )
|
||||
|
@ -272,9 +272,9 @@ def flatten_stack( data ):
|
|||
def flatten( obj ):
|
||||
if type(obj) == dict:
|
||||
# eprint( 'is a dict')
|
||||
key = obj.keys()[0] if obj.keys()[0] != 'file' else obj.keys()[1]
|
||||
key = list(obj.keys())[0] if list(obj.keys())[0] != 'file' else list(obj.keys())[1]
|
||||
flat.append( key )
|
||||
for field in obj[key].keys():
|
||||
for field in list(obj[key].keys()):
|
||||
# eprint( 'go flat key', field )
|
||||
flatten( obj[key][field] )
|
||||
|
||||
|
@ -409,7 +409,7 @@ def save( model, domains, recurse = False, force = False ):
|
|||
jlog( unique_models )
|
||||
to_browse = groupby_model( unique_models )
|
||||
|
||||
for mod in to_browse.keys():
|
||||
for mod in list(to_browse.keys()):
|
||||
print('loading %s %s' % (len(to_browse[mod]), mod) )
|
||||
if mod in odoo.env:
|
||||
try:
|
||||
|
@ -537,3 +537,4 @@ if __name__ == "__main__":
|
|||
get_schema( METHOD )
|
||||
|
||||
|
||||
|
||||
|
|
10
renderers.py
10
renderers.py
|
@ -1,4 +1,3 @@
|
|||
from __future__ import print_function
|
||||
import json as JSON
|
||||
from config import *
|
||||
|
||||
|
@ -15,15 +14,17 @@ import os
|
|||
os.environ["PYTHONIOENCODING"] = "utf-8"
|
||||
|
||||
def tsv( *fields ):
|
||||
fields = [ f.encode('utf-8') if type(f) == unicode else f for f in fields ]
|
||||
#d = [ print(type(f)) for f in fields ]
|
||||
# fields = f.encode('utf-8') if type(f) == str else f for f in fields ]
|
||||
# fields = [ str(f) if type(f) != str else f for f in fields ]
|
||||
# fields = [ '"' + s.replace('"','\\"').replace(',','\\,') + '"' for s in fields ]
|
||||
print( *fields, sep='\t' )
|
||||
|
||||
def csv( *fields ):
|
||||
#d = [ print(type(f)) for f in fields ]
|
||||
# print( [ type(s) for s in fields ] )
|
||||
# print( fields )
|
||||
fields = [ f.encode('utf-8') if type(f) == unicode else f for f in fields ]
|
||||
# fields = [ f.encode('utf-8') if type(f) == str else f for f in fields ]
|
||||
# print( [ type(s) for s in fields ] )
|
||||
# print( fields )
|
||||
fields = [ str(f) if type(f) != str else f for f in fields ]
|
||||
|
@ -66,7 +67,7 @@ def render_csv( model, list ):
|
|||
csv( *_cols )
|
||||
|
||||
for obj in list:
|
||||
csv( *[ obj[col] for col in _cols] )
|
||||
csv( *[ get_at_path(obj,col) for col in _cols] )
|
||||
|
||||
def render_json( model, list ):
|
||||
json( list.read() )
|
||||
|
@ -83,3 +84,4 @@ def render( opts, model, list ): # +format=json,xml,csv +json +tsv
|
|||
# render_xml( model, list )
|
||||
else:
|
||||
render_tsv( model, list )
|
||||
|
||||
|
|
Loading…
Reference in New Issue