Skip to Content
Menu
This question has been flagged
3 Replies
4941 Views

I am trying to understand how to extend Odoo. As first step I want to implement a new method named 'hello_world' for product.product class.


This methods does the mandatory 'Hello World', which according to other posts should be seen if odoo is launched in command line:

    print 'Hello World'


Then I set up an automated action which executes python code to launch that method every time a new product is created, so I will have my first new method in Odoo implemented.


I edit and add the following to addons/product/product.py:

class product_product(osv.osv):

[...]

    def hello_world():

        print 'Hello World'


And add the following server action:

Base model: Product

Action: Execute Python Code


Python Code:

self.hello_world()


And I try this flamboyant method by creating a new product through the GUI and getting the following error:

ValueError: "'product.product' object has no attribute 'hello_world'" while evaluating

u'# Available locals:\n# - time, datetime, dateutil: Python libraries\n# - env: Odoo Environement\n# - model: Model of the record on which the action is triggered\n# - object: Record on which the action is triggered if there is one, otherwise None\n# - workflow: Workflow engine\n# - Warning: Warning Exception to use with raise\n# To return an action, assign: action = {...}\nself.hello_world()'


Note: I am aware that the right way of doing this is extending Odoo through modules, but it is needed to understand this before moving forward.

Avatar
Discard

Did you restart the Odoo server? Modification of Python files require a server restart to take effect.

Best Answer

Better one Please Follow the odoo official documentation.This is not the proper way for extending the odoo Feature use Inheritance Method

Avatar
Discard
Best Answer

Hello E.M.,


Please try this in python code:

def hello_world(self):

    print 'Hello World'

 

Avatar
Discard
Related Posts Replies Views Activity
1
Dec 16
4729
12
Dec 23
34888
1
Aug 15
3763
0
Mar 15
2350
1
Nov 24
3104