diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-04-02 17:22:16 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-04-02 17:22:16 -0400 |
| commit | e1c47d12bf871bf30a149c7fc167d5d22ddaa222 (patch) | |
| tree | 94e26bd6a8d72589278548a874a7fcd54598b437 /lib/sqlalchemy/orm/attributes.py | |
| parent | d057f98b8a0eb5f993bdcc7748b486fe5c31d392 (diff) | |
| download | sqlalchemy-e1c47d12bf871bf30a149c7fc167d5d22ddaa222.tar.gz | |
- The ORM will set the docstring of all generated descriptors
to None by default. This can be overridden using 'doc'
(or if using Sphinx, attribute docstrings work too).
- Added kw argument 'doc' to all mapper property callables
as well as Column(). Will assemble the string 'doc' as
the '__doc__' attribute on the descriptor.
Diffstat (limited to 'lib/sqlalchemy/orm/attributes.py')
| -rw-r--r-- | lib/sqlalchemy/orm/attributes.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/sqlalchemy/orm/attributes.py b/lib/sqlalchemy/orm/attributes.py index 887d9a9c1..b631ea2c9 100644 --- a/lib/sqlalchemy/orm/attributes.py +++ b/lib/sqlalchemy/orm/attributes.py @@ -1366,12 +1366,12 @@ def unregister_class(class_): instrumentation_registry.unregister(class_) def register_attribute(class_, key, **kw): - proxy_property = kw.pop('proxy_property', None) comparator = kw.pop('comparator', None) parententity = kw.pop('parententity', None) - register_descriptor(class_, key, proxy_property, comparator, parententity) + doc = kw.pop('doc', None) + register_descriptor(class_, key, proxy_property, comparator, parententity, doc=doc) if not proxy_property: register_attribute_impl(class_, key, **kw) @@ -1405,7 +1405,8 @@ def register_attribute_impl(class_, key, manager.post_configure_attribute(key) -def register_descriptor(class_, key, proxy_property=None, comparator=None, parententity=None, property_=None): +def register_descriptor(class_, key, proxy_property=None, comparator=None, + parententity=None, property_=None, doc=None): manager = manager_of_class(class_) if proxy_property: @@ -1413,7 +1414,9 @@ def register_descriptor(class_, key, proxy_property=None, comparator=None, paren descriptor = proxy_type(key, proxy_property, comparator, parententity) else: descriptor = InstrumentedAttribute(key, comparator=comparator, parententity=parententity) - + + descriptor.__doc__ = doc + manager.instrument_attribute(key, descriptor) def unregister_attribute(class_, key): |
