OnlineJudge/utils/models.py
2015-09-24 14:55:20 +08:00

27 lines
580 B
Python

# coding=utf-8
import json
from django.db import models
from utils.xss_filter import XssHtml
class RichTextField(models.TextField):
__metaclass__ = models.SubfieldBase
def get_prep_value(self, value):
if not value:
value = ""
parser = XssHtml()
parser.feed(value)
parser.close()
return parser.getHtml()
class JsonField(models.TextField):
__metaclass__ = models.SubfieldBase
def get_prep_value(self, value):
return json.dumps(value)
def to_python(self, value):
return json.loads(value)