0
我有一個簡單的函數在自定義模型創建一個記錄從xmlrpc(PHP與ripcord庫)傳遞的信息,但是當我執行PHP的odoo控制檯返回以下錯誤:呼叫方法槽XMLRPC -Odoo v9
"cannot marshal recursive dictionaries" TypeError: cannot marshal recursive dictionaries "
誰我傳遞的數據是一個「類JSON」存儲在數據庫中的文本字段,所以首先我解析查詢,並從數據庫中的數據,然後嘗試把它通過XMLRPC
到Odoo這裏是我的代碼:
t_form_main model
class t_form_main(models.Model):
_name = "t_form_main"
_rec_name = "form_uid"
_order = "form_uid"
form_uid = fields.Char(string="ID",required=True)
json_string = fields.Text(string="JSON_original", required=True)
@api.one
def infoReceptor(self,info_uid,json_data):
vals = {}
vals['form_uid'] = info_uid
vals['json_string'] = json_data
return super(t_form_main,self).create(vals)
誰我使用XML-RPC調用PHP的一句話:
$insert = $models->execute_kw($db, $uid, $password,'t_form_main','infoReceptor', array(self,"UID",$data));
考慮$數據,誰該查詢存儲數據的變量:
$query = "SELECT raw_json FROM json_archive";
$result = $mysqlconn->query($query);
$row = $result->fetch_array(MYSQLI_ASSOC);
SOLUTION:
的代碼是正確的,問題是由在DB編纂一個問題引起的,這要歸功於菲利普堆棧爲您ADVI CE在我的函數的返回。
感謝您的評論,但只是改善退回輸出。我已經解決了我的問題,是在一個數據庫中的編纂問題 – NMenam