From: Mike Bayer Date: Thu, 12 Mar 2015 14:14:52 +0000 (-0400) Subject: - try to document how to get columns from constraints. X-Git-Tag: rel_1_0_0b1~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f211ad254d53b85aae319b41cc7b206f3e693660;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git - try to document how to get columns from constraints. unfortunately Sphinx refuses to work correctly for the columns attribute so we just add a lame message to contains_column(). --- diff --git a/doc/build/core/constraints.rst b/doc/build/core/constraints.rst index dfe9e9cdd6..197eeb8a9f 100644 --- a/doc/build/core/constraints.rst +++ b/doc/build/core/constraints.rst @@ -706,6 +706,13 @@ Constraints API .. autoclass:: Constraint :members: +.. autoclass:: ColumnCollectionMixin + :members: + +.. autoclass:: ColumnCollectionConstraint + :members: + :inherited-members: + .. autoclass:: CheckConstraint :members: :inherited-members: @@ -728,6 +735,7 @@ Constraints API :members: :inherited-members: + .. autofunction:: sqlalchemy.schema.conv .. _schema_indexes: diff --git a/doc/build/core/internals.rst b/doc/build/core/internals.rst index 81b4f1a81a..56b6162e9f 100644 --- a/doc/build/core/internals.rst +++ b/doc/build/core/internals.rst @@ -7,9 +7,6 @@ Some key internal constructs are listed here. .. currentmodule: sqlalchemy -.. autoclass:: sqlalchemy.schema.ColumnCollectionMixin - :members: - .. autoclass:: sqlalchemy.engine.interfaces.Compiled :members: diff --git a/lib/sqlalchemy/sql/schema.py b/lib/sqlalchemy/sql/schema.py index 2120e303ba..e022c57682 100644 --- a/lib/sqlalchemy/sql/schema.py +++ b/lib/sqlalchemy/sql/schema.py @@ -2373,6 +2373,7 @@ def _to_schema_column_or_string(element): class ColumnCollectionMixin(object): + columns = None """A :class:`.ColumnCollection` of :class:`.Column` objects. @@ -2455,6 +2456,13 @@ class ColumnCollectionConstraint(ColumnCollectionMixin, Constraint): return self._schema_item_copy(c) def contains_column(self, col): + """Return True if this constraint contains the given column. + + Note that this object also contains an attribute ``.columns`` + which is a :class:`.ColumnCollection` of :class:`.Column` objects. + + """ + return self.columns.contains_column(col) def __iter__(self):