Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
3 Antworten
16525 Ansichten

I am using OdooV10. I need to know how to get list of methods in models, both custom and default. So i can know the purpose of each models by looking on the list without searching it manually.

Is anyone have any idea ?

Thanks

Avatar
Verwerfen
Beste Antwort

Go in debug mode the go back i setting, under database, you got models, there you have the list of models (and much more info)


Avatar
Verwerfen

unfortunately, this is not exactly what was the poster was asking

Beste Antwort

Hello Ajeng,

In the database you can't see method list in the UI, because methods does not store in database.

You have to manually search them into the source code. 

Avatar
Verwerfen
Beste Antwort

Keep in mind, that you are dealing with python objects, therefore you could use object inspection easily.

The simplest method is to use the Shell in odoo:

#starts the odoo shell

/odoo/src/odoo-bin shell -c /odoo/odoo.conf -d db -r <dbusername> -w <dbpassword> 

dir()

from odoo.service import db

db.list_dbs()

model = self.env['res.partner']

#define a function to return the information about the methods

# http://www.diveintopython.net/power_of_introspection/index.html for more information 

def info(object, spacing=10, collapse=1): 1 2 3

    """Print methods and doc strings.

   

    Takes module, class, list, dictionary, or string."""

    methodList = [method for method in dir(object) if callable(getattr(object, method))]

    processFunc = collapse and (lambda s: " ".join(s.split())) or (lambda s: s)

    print "\n".join(["%s %s" %

                      (method.ljust(spacing),

                       processFunc(str(getattr(object, method).__doc__)))

                     for method in methodList])


info(model)


#result

#union Return the union of ``self`` with all the arguments (in linear time complexity, with first occurrence order preserved).

#unlink Override unlink to delete messages and followers. This cannot be cascaded, because link is done through (res_model, res_id).

#update Update the records in ``self`` with ``values``.

#... many more

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
1
Juli 25
389
1
Feb. 25
1207
3
Aug. 24
1579
0
Sept. 23
2150
2
Juni 23
3906