Skip to content

Commit f6133f8

Browse files
committed
add functions.get_apijson_table
1 parent dc0bae1 commit f6133f8

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

uliweb_apijson/apijson/__init__.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,29 @@ def get_apijson_tables(role="UNKNOWN"):
2121
editable = role in roles
2222
c["editable"] = editable
2323
return apijson_tables
24+
25+
def get_apijson_table(role="UNKNOWN",name=None):
26+
from uliweb import settings
27+
28+
if not name:
29+
return {}
30+
s = settings.APIJSON_TABLES
31+
if s:
32+
apijson_tables = dict(s.iteritems())
33+
else:
34+
return {}
35+
36+
c = apijson_tables.get(name)
37+
if not c:
38+
return {}
39+
editable = c.get("editable",False)
40+
_model_name = c.get("@model_name") or n
41+
if editable=="auto":
42+
editable = False
43+
POST = settings.APIJSON_MODELS.get(_model_name,{}).get("POST")
44+
if POST:
45+
roles = POST["roles"]
46+
if roles:
47+
editable = role in roles
48+
c["editable"] = editable
49+
return c

uliweb_apijson/apijson/settings.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,4 @@ user = {
1919

2020
[FUNCTIONS]
2121
get_apijson_tables = "uliweb_apijson.apijson.get_apijson_tables"
22+
get_apijson_table = "uliweb_apijson.apijson.get_apijson_table"

0 commit comments

Comments
 (0)