Используя jsonrpc с odoo python
Я использую jtable для загрузки списка предложений на веб-сайте, используя jsonrpc в файле веб-контроллера odoo12. Это мой код на python.
Мой код Python -
@http.route(['/Quotation/List'], type='http', auth='public',
website=True, csrf=False)
def quotation_list(self, **post):
vals = []
set_data_in_dic_json = {}
url = "http://localhost:8082/quotations"
headers = {'Content-Type': 'application/json'}
total_list = sale_obj.search([('state', 'in', ('draft', 'sent'))])
quotation_list = sale_obj.search([('state', 'in', ('draft', 'sent'))],offset=int(jtStartIndex), limit=int(jtPageSize), order=jtSorting)
if quotation_list:
for user_data in quotation_list:
sale_date = user_data.date_order
user_dic = {}
user_dic['id'] = user_data.id
user_dic['name'] = user_data.name
user_dic['date_order'] = str(sale_date)
user_dic['RequestDate'] = ''
user_dic['partner_id'] = user_data.partner_id.name
user_dic['user_id'] = user_data.user_id.name
user_dic['amount_total'] = user_data.amount_total
user_dic['state'] = user_data.state
vals.append(user_dic)
set_data_in_dic_json['Result'] = "OK"
set_data_in_dic_json['TotalRecordCount'] = len(total_list)
set_data_in_dic_json['Records'] = vals
data = {
"method": "echo",
"params": set_data_in_dic_json,
"jsonrpc": "2.0",
"id": 0,
}
data_json = json.dumps(data)
response = requests.post(url, data=data_json, headers=headers)
c = response.text
print (c)
Оператор печатает ошибку как:
{"id": 0, "jsonrpc": "2.0", "error": {"code": 404, "http_status": 404, "message": "404: Not Found", "data": {"exception_type ":" internal_error "," debug ":" Traceback (последний вызов был последним):\n файл \"/home/priya/workspace/odoo12/odoo/http.py\", строка 653, в _handle_exception\n вернуть супер (JsonRequest, self)._handle_exception(исключение)\n Файл \"/home/priya/workspace/odoo12/odoo/http.py\", строка 312, в _handle_exception\n поднять pycompat.reraise(тип (исключение), исключение, sys.exc_info()[2])\n Файл \"/home/priya/workspace/odoo12/odoo/tools/pycompat.py\", строка 87, в ререйзе \ n повысить значение \n File \"/home/priya/workspace/odoo12/odoo/http.py\", строка 1457, в _dispatch_nodb\n func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()\n Файл \"/home/priya/.local/lib/python3.5/site-packages/werkzeug/routing.py\", строка 1581, в совпадении \ n повысить NotFound()\nwerkzeug.exceptions.NotFound: 404 не найдено: запрошенный URL-адрес не был найден на сервере. Если вы ввели URL-адрес вручную, проверьте правильность написания и повторите попытку. \ N "," message ":" 404 Not Found: запрошенный URL-адрес не найден на сервере. Если вы ввели URL-адрес вручную, проверьте правильность написания и повторите попытку. "," Name": "werkzeug.exceptions.NotFound", "arguments": []}}}