Michael Bayer wrote:
> use 'sites':relation(Site, backref=backref('attachments',
> order_by=attachment_table.c.name)) for now.

Ok, should I open a ticket for that ?


> On Mar 30, 5:50 am, Alexandre CONRAD <[EMAIL PROTECTED]> wrote:
> 
>>Hello,
>>
>>I have a problem with "order_by" on a many-to-many relationship (using
>>assign_mapper):
>>
>>------------------------------
>>attachment_table = Table('attachments', meta,
>>     Column('id', Integer, primary_key=True),
>>     Column('file', Binary, nullable=False),
>>     Column('name', Unicode(40), nullable=False),
>>     Column('type', Unicode(30)),
>>     Column('date', DateTime, default=datetime.now),
>>     Column('size', Integer, nullable=False),
>>     Column('description', Unicode(40)),
>>)
>>
>>attachments_has_sites = Table('attachments_has_sites', meta,
>>     Column('id_attachment', None, ForeignKey('attachments.id'),
>>primary_key=True),
>>     Column('id_site', None, ForeignKey('sites.id'), primary_key=True),
>>)
>>
>>class Attachment(object):
>>     pass
>>
>>attachment_mapper = assign_mapper(ctx, Attachment, attachment_table,
>>     properties={
>>         'file':deferred(attachment_table.c.file),
>>         'sites':relation(Site, backref="attachments",
>>secondary=attachments_has_sites, cascade="save-update"),
>>     },
>>     order_by=attachment_table.c.name,
>>)
>>------------------------------
>>
>>So I have a Site object where I can ask for it's attachments:
>>
>>   s = model.Site.get(1)
>>   attachment_list = s.attachments
>>
>>But it fires the following QUERY:
>>
>>SELECT attachments.name AS attachments_name, attachments.description AS
>>attachments_description, attachments.date AS attachments_date,
>>attachments.type AS attachments_type, attachments.id AS attachments_id,
>>attachments.size AS attachments_size
>>FROM attachments, attachments_has_sites
>>WHERE %s = attachments_has_sites.id_site AND attachments.id =
>>attachments_has_sites.id_attachment ORDER BY
>>attachments_has_sites.id_attachment
>>
>>the "ORDER BY" is computed against the weak table (secondary)
>>"attachments_has_sites".
>>
>>Regards,
>>--
>>Alexandre CONRAD
> 
> 
> 
> > 
> 
> 
> ---------------------------------------------------------------------------------------------------
> Texte inséré par Platinum 2007:
> 
>  S'il s'agit d'un mail indésirable (SPAM), cliquez sur le lien suivant pour 
> le reclasser : http://127.0.0.1:6083/Panda?ID=pav_32965&SPAM=true
> ---------------------------------------------------------------------------------------------------
> 
> 

-- 
Alexandre CONRAD


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to