Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
2096 Vistas
Getting 404 Error for web controller
in Postman http://localhost:8017/school/schoolrecords
File name: controller/controllers.py

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import logging

from odoo import http
from odoo.http import request
_logger = logging.getLogger(__name__)
class StudentController(http.Controller):

@http.route('/school/schoolrecords', type='http', auth='public', methods=['GET'])
def getSchoolRecords(self):
school_rec = request.env['school.student'].sudo().search([])
school=[]

for rec in school_rec:
vals={
'id':rec.classid
}
school.append(vals)
return {'student':school}


Avatar
Descartar
Mejor respuesta

Hii,

Odoo routes returning JSON should set type='json' or return a Response object (not just a dictionary).

Also, you are using type='http' but returning a plain Python dictionary. For JSON responses, it's better to either:

  • Use type='json' (automatic JSON serialization)
  • Or manually return a Response with headers

here is updated code 
# -*- coding: utf-8 -*-

from odoo import http

from odoo.http import request

import json


class StudentController(http.Controller):


    @http.route('/school/schoolrecords', type='json', auth='public', methods=['GET'])

    def get_school_records(self):

        school_rec = request.env['school.student'].sudo().search([])

        school = []


        for rec in school_rec:

            school.append({

                'id': controllers.py

i hope it is use full

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
2
jun 25
413
3
jun 24
3272
1
mar 23
3697
0
abr 17
2888
0
mar 15
3951