모델에 JSONField (http://djangosnippets.org/snippets/1478/)가 있는데 json이 아닌 admin 사용자에게 데이터를 표시하는 가장 좋은 방법을 찾으려고합니다.django의 친숙한 목록으로 json 텍스트를 표시합니다.
누구든지 장고 관리 에서이 일을하는 가장 좋은 방법을 알고 있습니까?
from django import template
from django.utils import simplejson as json
register = template.Library()
@register.filter
def json_list(value):
"""
Returns the json list formatted for display
Use it like this :
{{ myjsonlist|json_list }}
"""
try:
dict = json.loads(value)
result = []
for k, v in dict.iteritems():
result.append(" = ".join([k,v]))
return "<br/>".join(result)
except:
return value
귀하의 사례에서 JSONField sholud는 유효한 Python dict을 반환합니다. 템플릿에 해당 사전을 보내고 예를 들어 template for loop를 사용하여 표시 할 수 있습니다. –
admin 앱에서이 json 입력란을 다른 형식으로 수정하여 수정할 수 있도록 하시겠습니까? – sebpiq
Sébastien - 아니요, 그냥 템플릿을 수정하지 않고 관리 섹션에서 친숙한 형식으로 표시하고 싶습니다. – kayluhb