File tree Expand file tree Collapse file tree 1 file changed +10
-4
lines changed Expand file tree Collapse file tree 1 file changed +10
-4
lines changed Original file line number Diff line number Diff line change 1
1
import json
2
+ import copy
2
3
3
4
from django import forms
4
5
from django .utils .safestring import mark_safe
@@ -12,15 +13,20 @@ class JSONEditorWidget(forms.Widget):
12
13
def __init__ (self , schema , collapsed = True ):
13
14
super ().__init__ ()
14
15
self ._schema = schema
15
- self ._collapsed = int ( collapsed )
16
+ self ._collapsed = collapsed
16
17
17
18
def render (self , name , value , attrs = None ):
18
- self ._schema ['title' ] = name
19
- self ._schema ['options' ] = {'collapsed' : 1 }
19
+ if callable (self ._schema ):
20
+ schema = self ._schema (self )
21
+ else :
22
+ schema = copy .copy (self ._schema )
23
+
24
+ schema ['title' ] = ' '
25
+ schema ['options' ] = {'collapsed' : int (self ._collapsed )}
20
26
21
27
context = {
22
28
'name' : name ,
23
- 'schema' : self . _schema ,
29
+ 'schema' : schema ,
24
30
'data' : json .loads (value ),
25
31
}
26
32
return mark_safe (render_to_string (self .template_name , context ))
You can’t perform that action at this time.
0 commit comments