Commit da9adda2 authored by gushitong's avatar gushitong

bugfix

parent 2c6c19d5
__version__ = '0.0.3'
__version__ = '0.0.4'
__author__ = 'gushitong@gmei.com'
......@@ -56,7 +56,10 @@ class MagicAccessor(CacheAccessor):
return DictWrapper(obj)
logger.debug("Magic CacheMiss: %s" % self.pk_list)
try:
obj = self.manager(pk_list=self.pk_list)[0]
except IndexError:
return None
self.cache[obj['id']] = obj
return DictWrapper(obj)
......
......@@ -2,6 +2,5 @@
from rest_framework.serializers import *
from .serializer import MagicSerializer
from .field import MagicField
from .validator import BlacklistValidator, FilterWordValidator
from gm_serializer.error import MagicObjNotExist, MultiMagicObjFound
\ No newline at end of file
from rest_framework import serializers
from gm_serializer.utils import RPCMixin
class BlacklistValidator(RPCMixin):
def __call__(self, value):
try:
r = self.call_rpc('api/user/in_blacklist', user_id=value)
except:
return False
if r:
raise serializers.ValidationError("User in blacklist.")
class FilterWordValidator(RPCMixin):
def __init__(self, filter_type=None):
self.filter_type = filter_type
def __call__(self, value):
try:
r = self.call_rpc('api/filterWord/list', filter_type=self.filter_type)
except:
return False
if r:
raise serializers.ValidationError("Content contains sensitive words.")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment