Browse Source

[FIX] emca: patch for json

pull/115/head
robin.keunen 4 years ago
parent
commit
ca103c7b21
  1. 21
      easy_my_coop_api/controllers/controllers.py

21
easy_my_coop_api/controllers/controllers.py

@ -3,11 +3,30 @@
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
import re
from odoo import http
from odoo.http import route from odoo.http import route
from odoo.addons.base_rest.controllers import main from odoo.addons.base_rest.controllers import main
def patch_for_json(path_re):
# this is to avoid Odoo, which assumes json always means json+rpc,
# complaining about "function declared as capable of handling request
# of type 'http' but called with a request of type 'json'"
# cf rest-framework/graphql_base/controllers/main.py
path_re = re.compile(path_re)
orig_get_request = http.Root.get_request
def get_request(self, httprequest):
if path_re.match(httprequest.path):
return http.HttpRequest(httprequest)
return orig_get_request(self, httprequest)
http.Root.get_request = get_request
class UserController(main.RestController): class UserController(main.RestController):
_root_path = "/api/" _root_path = "/api/"
_collection_name = "emc.services" _collection_name = "emc.services"
@ -33,3 +52,5 @@ class UserController(main.RestController):
return self._process_method( return self._process_method(
_service_name, "validate", _id=_id, params=params _service_name, "validate", _id=_id, params=params
) )
patch_for_json("^/api/subscription-request/[0-9]*/validate$")
Loading…
Cancel
Save