Skip to content

Conversation

mpnowacki-reef
Copy link

The main reason for submitting this PR is to give users the ability to subclass RedisChannelLayer and do sth like:

def default(value):
    if isinstance(value, enum.Enum):
        return value.value
    return value


class ECRedisChannelLayer(RedisChannelLayer):
    """EC stands for "enum-compatible" """
    def _packing_kwargs(self, message):
        return {**super()._packing_kwargs, 'default': default}

Copy link
Member

@carltongibson carltongibson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add a test case showing the usage here?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants