summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Baida <yuri.baida@gmail.com>2015-06-26 10:45:48 -0700
committerYuri Baida <yuri.baida@gmail.com>2015-06-26 10:45:48 -0700
commit5717186122d5538e53205268846beb7143a3d4cc (patch)
treebd94db5db949b0d0a0723c15e58e9043205b0ccd
parent447ee0af1d2fbb95f2f1244de301f2fe4a87a72f (diff)
downloadsqlalchemy-pr/185.tar.gz
Fix code examples in automap's documentationpr/185
Fix camelize_classname and pluralize_collection functions as they didn't work as expected.
-rw-r--r--lib/sqlalchemy/ext/automap.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/sqlalchemy/ext/automap.py b/lib/sqlalchemy/ext/automap.py
index 1006e7326..330992e56 100644
--- a/lib/sqlalchemy/ext/automap.py
+++ b/lib/sqlalchemy/ext/automap.py
@@ -188,7 +188,7 @@ scheme for class names and a "pluralizer" for collection names using the
"'words_and_underscores' -> 'WordsAndUnderscores'"
return str(tablename[0].upper() + \\
- re.sub(r'_(\w)', lambda m: m.group(1).upper(), tablename[1:]))
+ re.sub(r'_([a-z])', lambda m: m.group(1).upper(), tablename[1:]))
_pluralizer = inflect.engine()
def pluralize_collection(base, local_cls, referred_cls, constraint):
@@ -196,10 +196,9 @@ scheme for class names and a "pluralizer" for collection names using the
"'SomeTerm' -> 'some_terms'"
referred_name = referred_cls.__name__
- uncamelized = referred_name[0].lower() + \\
- re.sub(r'\W',
- lambda m: "_%s" % m.group(0).lower(),
- referred_name[1:])
+ uncamelized = re.sub(r'[A-Z]',
+ lambda m: "_%s" % m.group(0).lower(),
+ referred_name)[1:]
pluralized = _pluralizer.plural(uncamelized)
return pluralized