Skip to Content
Menu
This question has been flagged
2 Replies
10708 Zobrazenia

So I need to make a Rest service which will call data from an specific model.

In order to do this, I must create a controller.

I'm newbie with Odoo, also with Json, and I can't find anything that could work for this.

Far I have is all I need but in a http request.

class RestService(http.Controller):
    @http.route('/orders/<model("sale.order"):order>', auth='none', website=True)
    def consulta_orden(self , order):
        return request.render('consulta_pedidos.order', {'order': order})
        
        return {'order_id': order_id}

The idea is that when I hace the data loaded, I can render this data in a template. Already did this with an Http request, but I need it with Json. Any tip about how to implement it better.

Avatar
Zrušiť
Best Answer

Thank you for your answer. It help me a lot. :)

Can you give me a suggestion the link to study Owl and js for Odoo 15?

Avatar
Zrušiť
Best Answer

Hello Sergio,


To render template with json type controller, you need to pass ajax.jsonRpc through JS and pass your controller url in that for eg.



JS Code:-


ajax.jsonRpc("/orders", 'call', {'order':order}).then(function (modal) {

                $modal.modal('hide') #if you want to hide that modal

            });


Controller code:- 


@http.route(['/orders'], type='json', auth='public',

                methods=['POST'], website=True)

    def consulta_orden(self, order):

        return request.env['ir.ui.view'].render_template(

            'consulta_pedidos.order', {'order': order})


You can also refer this link- https://www.odoo.com/forum/help-1/question/send-json-request-to-controller-the-last-will-render-a-snippet-template-150553


Regards,




Email:      odoo@aktivsoftware.com  

Skype: kalpeshmaheshwari

   

Avatar
Zrušiť
Related Posts Replies Zobrazenia Aktivita
1
jún 23
3940
1
sep 24
1404
1
dec 21
3664
2
dec 23
19564
1
jún 25
2264