def model_exists(model):
    """
    Return True if 'model' is scaffoldable.
    """
    connection = conf_lib.get_server_connection(config)
    model_model = connection.get_model('ir.model')
    res = model_model.search_count([('model', '=', model),
                                    ('transient', '=', False)])
    return res != 0
def list_models():
    connection = conf_lib.get_server_connection(config)
    model_model = connection.get_model('ir.model')

    models = model_model.search_read([('transient', '=', False),
                                      ('model', '!=', '_unknown')],
                                     ['model', 'name'])

    if not models:
        sys.stdout.write('No model found !')
        return

    for m in sorted(models, key=lambda f: f['model']):
        sys.stdout.write('%s (%s)\n' % (m['model'], m['name']))
def load_fields():
    """
    Build the model fields list, fetched as defined in the target database.
    """
    global has_tracked_fields
    global has_computed_fields
    has_tracked_fields, has_computed_fields = False, False
    connection = conf_lib.get_server_connection(config)
    model_fields = connection.get_model('ir.model.fields')

    field_ids = model_fields.search([('model', '=', model)])
    fields = model_fields.read(field_ids)
    ret = []
    for field in fields:
        f = ModelField(connection, field)
        has_tracked_fields = has_tracked_fields or f.track_visibility
        has_computed_fields = has_computed_fields or len(f.compute) > 1
        ret.append(f)
    return ret
Example #4
0
# -*- coding: utf-8 -*-
import odoolib
from odoo_csv_tools.lib import conf_lib
from prefix import *
from files import *

connection = conf_lib.get_server_connection(config_file)


def view_xml_id(connection, module, name):
    data_model = connection.get_model('ir.model.data')
    data_ids = data_model.search([('module', '=', module),
                                  ('name', '=', name)])
    records = data_model.read(data_ids, ['model', 'res_id'])
    if not len(records):
        print 'Record not found'
    else:
        record = records[0]
        print 'Model: %s Id: %s' % (record['model'], record['res_id'])


view_xml_id(connection, HELPDESK_TICKET_PREFIX, '132496')