Just a simple regex function to convert a camel case string ("ClassName") to a lower case string with underscores ("class_name"). Came across a need for this when I was trying to add properties to a model at runtime using object.__class__.__name__
. This is a modification of the function "get_verbose_name" found in django.db.models.options.
1 | camelcase_to_underscore = lambda str: re.sub('(((?<=[a-z])[A-Z])|([A-Z](?![A-Z]|$)))', '_\\1', str).lower().strip('_')
|
More like this
- Mask sensitive data from logger by agusmakmun 1 month ago
- Template tag - list punctuation for a list of items by shapiromatron 1 year, 3 months ago
- JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 1 year, 3 months ago
- Serializer factory with Django Rest Framework by julio 1 year, 10 months ago
- Image compression before saving the new model / work with JPG, PNG by Schleidens 1 year, 11 months ago
Comments
Please login first before commenting.