Help

0

How to call a wizard after creating an object?

Avatar
David Rios

Is there any way to call a wizard after creating an object in odoo11? or perhaps use some sort of after_create method?

I've tried this code but it doesn't seem to work

@api.model
def create(self, values):
    a= super(MyModel, self).create(values) 
    self.open_wizard()
    return a

def open_wizard(self):
    return {
'name': 'my wizard',
'type': 'ir.actions.act_window',
'res_model': 'my.wizard',
'view_type': 'form',
'view_mode': 'form', 'target': 'new'}
2 Comments
Avatar
Discard
Avatar
Sehrish
-

You can call return only once

Avatar
David Rios
-

Yes, but the create method doesn't work without returning the created object

4 Answers
1
Best Answer

Hi David,

You Can't able to create wizard after Creating object.

In Create and Write Method, you must return created object otherwise it will throws the error.

Thanks.

Avatar
Discard
0
Avatar
russ@russellbriggs.com
Best Answer

Your best bet might be to give new records a certain status which causes the record's fields to be readonly / invisible and for a button to be shown, which the user can then click to launch the wizard.

Alternatively, you can prevent users from being able to create the record directly by adding create="0" on the tree view, and create the record programmatically as part of a wizard.

HTH

Avatar
Discard