diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-01-13 15:38:38 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-01-13 15:38:38 +0000 |
| commit | b99bdc7cee1080e6fd86451c5def2410a697c0b9 (patch) | |
| tree | eb7bfe1e05ab6ffc4beaacd4b9ce7bbeff452849 /lib/sqlalchemy | |
| parent | b23f8c0f2efea544954e1f6cfcdf4931b2f57213 (diff) | |
| download | sqlalchemy-b99bdc7cee1080e6fd86451c5def2410a697c0b9.tar.gz | |
- Column with no name (as in declarative) won't raise a
NoneType error when it's string output is requsted
(such as in a stack trace).
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/ext/declarative.py | 1 | ||||
| -rw-r--r-- | lib/sqlalchemy/schema.py | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/lib/sqlalchemy/ext/declarative.py b/lib/sqlalchemy/ext/declarative.py index a5cb6e9d2..70f50622d 100644 --- a/lib/sqlalchemy/ext/declarative.py +++ b/lib/sqlalchemy/ext/declarative.py @@ -737,3 +737,4 @@ def _undefer_column_name(key, column): column.key = key if column.name is None: column.name = key + util.reset_memoized(column, 'description')
\ No newline at end of file diff --git a/lib/sqlalchemy/schema.py b/lib/sqlalchemy/schema.py index b8a36ebb5..792a7e923 100644 --- a/lib/sqlalchemy/schema.py +++ b/lib/sqlalchemy/schema.py @@ -617,9 +617,16 @@ class Column(SchemaItem, expression.ColumnClause): else: return self.description + @util.memoized_property + def description(self): + if not self.name: + return "(no name)" + else: + return self.name.encode('ascii', 'backslashreplace') + + @property def bind(self): return self.table.bind - bind = property(bind) def references(self, column): """Return True if this Column references the given column via foreign key.""" |
