This question has been flagged
1 Reply
3252 Views

Hi Everyone,

I need a created record ID from Python to JS.

I'm opening a form view from Js using do_action method

this.do_action({
        views: [[false, 'form']],
        view_type: 'form',
        view_mode: 'form',
        res_model: 'expense.mode',
        type: 'ir.actions.act_window',
        target: 'new',
}, {
    on_close: function (record_id) {
         // Here i need created record ID
    }
});


In form View, i added a footer to send created record ID

<footer invisible="context.get('hide_footer')">
        <button name="action_save" type="object" string="Save" class="oe_highlight"/>
        <button special="cancel" string="Cancel"/>
</footer>


In Python

@api.multi
def action_save(self):
    return self.id


But i'm getting undefined, How can i get a record ID?

Thanks in Advance.

Avatar
Discard
Best Answer

Hi,

you can simply send context with action. also can set field value using default_FIELDNAME in context.


this.do_action({
        views: [[false, 'form']],
        view_type: 'form',
        view_mode: 'form',
        res_model: 'expense.mode',
        type: 'ir.actions.act_window',
        target: 'new',

        context: {'key': value}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      

}

Avatar
Discard
Author

Hi Haresh,

I need a record ID, not need to set default value while opening form.

Thanks.