3
3
from uliweb .orm import ModelNotFound
4
4
from json import loads
5
5
import logging
6
+ import traceback
6
7
7
8
log = logging .getLogger ('apijson' )
8
9
@@ -20,7 +21,7 @@ def __begin__(self):
20
21
except Exception as e :
21
22
log .error ("try to load json but get exception: '%s', request data: %s" % (e ,request .data ))
22
23
return json ({"code" :400 ,"msg" :"not json data in the request" })
23
-
24
+
24
25
def apply_vars (self ):
25
26
for key in self .request_data :
26
27
if key [- 1 ]== "@" :
@@ -155,7 +156,7 @@ def _get_array(self,key):
155
156
#model settings
156
157
model_setting = settings .APIJSON_MODELS .get (modelname ,{})
157
158
secret_fields = model_setting .get ("secret_fields" )
158
-
159
+
159
160
#model params
160
161
#column
161
162
model_param = params [n ]
@@ -273,7 +274,7 @@ def head(self):
273
274
log .error (err )
274
275
traceback .print_exc ()
275
276
return json ({"code" :400 ,"msg" :err })
276
-
277
+
277
278
return json (self .rdict )
278
279
279
280
def _head (self ,key ):
@@ -293,7 +294,7 @@ def _head(self,key):
293
294
HEAD = model_setting .get ("HEAD" )
294
295
if not HEAD :
295
296
return json ({"code" :400 ,"msg" :"'%s' not accessible" % (modelname )})
296
-
297
+
297
298
roles = HEAD .get ("roles" )
298
299
permission_check_ok = False
299
300
if not params_role :
@@ -474,7 +475,7 @@ def _put_one(self,key,tag):
474
475
except ModelNotFound as e :
475
476
log .error ("try to find model '%s' but not found: '%s'" % (modelname ,e ))
476
477
return json ({"code" :400 ,"msg" :"model '%s' not found" % (modelname )})
477
-
478
+
478
479
APIJSON_REQUESTS = settings .APIJSON_REQUESTS or {}
479
480
request_tag = APIJSON_REQUESTS .get (tag ,{})
480
481
_model_name = request_tag .get ("@model_name" ) or tag
@@ -527,7 +528,7 @@ def _put_one(self,key,tag):
527
528
528
529
if not permission_check_ok :
529
530
return json ({"code" :400 ,"msg" :"no permission" })
530
-
531
+
531
532
kwargs = {}
532
533
for k in params :
533
534
if k == "id" :
@@ -583,7 +584,7 @@ def _delete_one(self,key,tag):
583
584
except ModelNotFound as e :
584
585
log .error ("try to find model '%s' but not found: '%s'" % (modelname ,e ))
585
586
return json ({"code" :400 ,"msg" :"model '%s' not found" % (modelname )})
586
-
587
+
587
588
request_tag = settings .APIJSON_REQUESTS .get (tag ,{})
588
589
_model_name = request_tag .get ("@model_name" ) or tag
589
590
request_tag_config = request_tag .get (_model_name ,{})
0 commit comments