Thanks Sean. I will check that.
Meanwhile I tried this and it is working
port1 = orm.aliased(models_v2.Port, name="port1")
port2 = orm.aliased(models_v2.Port, name="port2")
router_intf_qry =
context.session.query(RouterPort.router_id).join((port1,
port1.id==RouterPort.port_id), (port2,
port2.device_id==RouterPort.router_id)).filter(port1.network_id==int_net_id,
port2.network_id==ext_net_id).distinct()
for router in router_intf_qry:
router_id =router.router_id
Thanks
Anil Venkata
On 12/01/2015 06:35 PM, Sean M. Collins wrote:
Consult the API:
http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.join
In fact, there is already one join happening a couple lines above your
change:
https://github.com/openstack/neutron/blob/stable/liberty/neutron/db/l3_db.py#L800
Most likely, you will also need to use the aliased() function - since
there are some examples that are similar to what you are trying to do -
check out the "Joins to a Target with an ON Clause" section in the first
link.
http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.aliased
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev