Thanks!

On Mon, May 9, 2016 at 11:47 PM, Mike Bayer <mike...@zzzcomputing.com>
wrote:

>
> OK let's make it take both into account....
>
>
> print [c.key for c in sorted(inspect(Venue).column_attrs, key=lambda col:
> col.columns[0]._creation_order)]
>
>
>
> On 05/09/2016 12:41 PM, Denis Rykov wrote:
>
>> It not returning expected result:
>>
>>  >>> [c.key for c in sorted(inspect(Venue).columns, key=lambda col:
>> col._creation_order)]
>> ['id', 'name', 'address']
>>
>> I want to get ['id', 'name', 'address_'].
>>
>>
>> On Mon, May 9, 2016 at 9:01 PM, Mike Bayer <mike...@zzzcomputing.com
>> <mailto:mike...@zzzcomputing.com>> wrote:
>>
>>
>>     ideally declarative would try to preserve this ordering for straight
>>     columns, for now you can do it like this:
>>
>>
>>     [c.key for c in sorted(inspect(Venue).columns, key=lambda col:
>>     col._creation_order)]
>>
>>
>>
>>     On 05/09/2016 09:50 AM, Denis Rykov wrote:
>>
>>         Thanks for quick response. I've tried your approach:
>>
>>                     Venue.__table__.columns.keys()
>>
>>         ['id', 'name', 'address']
>>
>>         But how I can get class attributes in the same order as real
>>         table columns?
>>
>>         On Mon, May 9, 2016 at 8:31 PM, Mike Bayer
>>         <mike...@zzzcomputing.com <mailto:mike...@zzzcomputing.com>
>>         <mailto:mike...@zzzcomputing.com
>>
>>         <mailto:mike...@zzzcomputing.com>>> wrote:
>>
>>              not a bad question.  Those attributes are the mapper-assigned
>>              attributes and I'd guess that because address_ has an
>> alternate
>>              name, declarative is setting it up in a different step.   The
>>              attributes on a class can't be ordered in any case.
>>
>>              To get the real order of columns at the Core level use the
>>         table:
>>
>>              Venue.__table__.columns.keys()
>>
>>
>>
>>              On 05/09/2016 08:11 AM, Denis Rykov wrote:
>>
>>                  Hello.
>>
>>                  Why "address_" key on first place of list, is it
>>         expected behaviour?
>>
>>                  |
>>                    >>> from sqlalchemy.ext.declarative import
>>         declarative_base
>>                    >>> from sqlalchemy.inspection import inspect
>>                    >>> from sqlalchemy import Integer, Column, Unicode
>>                    >>>
>>                    >>> Base = declarative_base()
>>                    >>>
>>                    >>>
>>                    >>> class Venue(Base):
>>                  ...     __tablename__ = 'venue'
>>                  ...     id = Column(Integer, primary_key=True)
>>                  ...     name = Column(Unicode, nullable=False)
>>                  ...     address_ = Column('address', Unicode,
>>         nullable=False)
>>                  ...
>>                    >>> inspect(Venue).columns.keys()
>>                  ['address_', 'id', 'name']
>>                  |
>>
>>
>>                  --
>>                  You received this message because you are subscribed to
>>         the Google
>>                  Groups "sqlalchemy" group.
>>                  To unsubscribe from this group and stop receiving
>>         emails from
>>                  it, send
>>                  an email to sqlalchemy+unsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>
>>                  <mailto:sqlalchemy%2bunsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%252bunsubscr...@googlegroups.com>>
>>                  <mailto:sqlalchemy+unsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>
>>                  <mailto:sqlalchemy%2bunsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%252bunsubscr...@googlegroups.com>>>.
>>                  To post to this group, send email to
>>         sqlalchemy@googlegroups.com <mailto:sqlalchemy@googlegroups.com>
>>                  <mailto:sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>>
>>                  <mailto:sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>
>>                  <mailto:sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>>>.
>>                  Visit this group at
>>         https://groups.google.com/group/sqlalchemy.
>>                  For more options, visit
>> https://groups.google.com/d/optout.
>>
>>
>>              --
>>              You received this message because you are subscribed to a
>>         topic in
>>              the Google Groups "sqlalchemy" group.
>>              To unsubscribe from this topic, visit
>>
>> https://groups.google.com/d/topic/sqlalchemy/k0MrlMBvAls/unsubscribe.
>>              To unsubscribe from this group and all its topics, send an
>>         email to
>>         sqlalchemy+unsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>
>>              <mailto:sqlalchemy%2bunsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%252bunsubscr...@googlegroups.com>>.
>>
>>              To post to this group, send email to
>>         sqlalchemy@googlegroups.com <mailto:sqlalchemy@googlegroups.com>
>>              <mailto:sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>>.
>>              Visit this group at
>> https://groups.google.com/group/sqlalchemy.
>>              For more options, visit https://groups.google.com/d/optout.
>>
>>
>>         --
>>         You received this message because you are subscribed to the Google
>>         Groups "sqlalchemy" group.
>>         To unsubscribe from this group and stop receiving emails from
>>         it, send
>>         an email to sqlalchemy+unsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>
>>         <mailto:sqlalchemy+unsubscr...@googlegroups.com
>>         <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>>.
>>         To post to this group, send email to sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>
>>         <mailto:sqlalchemy@googlegroups.com
>>         <mailto:sqlalchemy@googlegroups.com>>.
>>         Visit this group at https://groups.google.com/group/sqlalchemy.
>>         For more options, visit https://groups.google.com/d/optout.
>>
>>
>>     --
>>     You received this message because you are subscribed to a topic in
>>     the Google Groups "sqlalchemy" group.
>>     To unsubscribe from this topic, visit
>>     https://groups.google.com/d/topic/sqlalchemy/k0MrlMBvAls/unsubscribe.
>>     To unsubscribe from this group and all its topics, send an email to
>>     sqlalchemy+unsubscr...@googlegroups.com
>>     <mailto:sqlalchemy%2bunsubscr...@googlegroups.com>.
>>     To post to this group, send email to sqlalchemy@googlegroups.com
>>     <mailto:sqlalchemy@googlegroups.com>.
>>     Visit this group at https://groups.google.com/group/sqlalchemy.
>>     For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "sqlalchemy" group.
>> To unsubscribe from this group and stop receiving emails from it, send
>> an email to sqlalchemy+unsubscr...@googlegroups.com
>> <mailto:sqlalchemy+unsubscr...@googlegroups.com>.
>> To post to this group, send email to sqlalchemy@googlegroups.com
>> <mailto:sqlalchemy@googlegroups.com>.
>> Visit this group at https://groups.google.com/group/sqlalchemy.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "sqlalchemy" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/sqlalchemy/k0MrlMBvAls/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to