[Sqlalchemy-tickets] =?utf-8?q?=5Bsqlalchemy=5D_=2396=3A_Backref_broken_for_non-trivial_relati?= =?
Brought to you by:
zzzeek
From: sqlalchemy <mi...@zz...> - 2006-03-06 04:55:14
|
Izk2OiBCYWNrcmVmIGJyb2tlbiBmb3Igbm9uLXRyaXZpYWwgcmVsYXRpb25zaGlwcw0KLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KIFJlcG9ydGVyOiAgcnRsICAgICAgIHwgICAgICAgT3duZXI6ICB6enpl ZWsNCiAgICAgVHlwZTogIGRlZmVjdCAgICB8ICAgICAgU3RhdHVzOiAgbmV3ICAgDQogUHJpb3Jp dHk6ICBjcml0aWNhbCAgfCAgIE1pbGVzdG9uZTogICAgICAgIA0KQ29tcG9uZW50OiAgb3JtICAg ICAgIHwgICAgIFZlcnNpb246ICAgICAgICANCiBLZXl3b3JkczogIGJhY2tyZWYgICB8ICANCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCldoZW4gYmFja3JlZnMgYXJlIHVzZWQgaW4gbm9uLXRyaXZpYWwg cmVsYXRpb25zaGlwcyAoZS5nLg0KIENvbXBhbnk8LT5BZGRyZXNzPC0+UGhvbmUgYW5kIENvbXBh bnk8LT5JbnZvaWNlPC0+SXRlbXMpIGFjY2Vzc2luZyB0aGUNCiBjb21wbGV4IG1hcHBlZCBlbnRp dHkgdGhyb3VnaCB0aGUgYmFja3JlZiBmYWlscyB0byByZXRyaWV2ZSBhbGwgdGhlDQogbmVjZXNz YXJ5IGRhdGEsIGUuZy4gYWNjZXNzaW5nIHRoZSBjb21wYW55IHZpYSBpbnZvaWNlIGRvZXMgbm90 IHJldHVybiBhbGwNCiB0aGUgY29tcGFueSBwaG9uZSBlbnRyaWVzLiBTZWUgdGhlIGV4YW1wbGUg YmVsb3csIHdoZXJlLCBpZiB0aGUgbGFzdA0KIG9iamVjdHN0b3JlLmNsZWFyKCkgaXMgcmVtb3Zl ZCwgaXQgd29ya3MgYXMgZXhwZWN0ZWQuDQoNCiB7e3sNCiBpbXBvcnQgZGF0ZXRpbWUNCiBmcm9t IHNxbGFsY2hlbXkgaW1wb3J0ICoNCg0KIGRiICA9IGVuZ2luZS5jcmVhdGVfZW5naW5lKCdzcWxp dGUnLCB7J2ZpbGVuYW1lJzonOm1lbW9yeTonfSwgZWNobz1UcnVlKQ0KDQoNCiBjb21wYW5pZXNf dGFibGUgPSBUYWJsZSgnY29tcGFuaWVzJywgZGIsDQogICAgIENvbHVtbignY29tcGFueV9pZCcs IEludGVnZXIsIFNlcXVlbmNlKCdjb21wYW55X2lkX3NlcScsDQogb3B0aW9uYWw9VHJ1ZSksIHBy aW1hcnlfa2V5ID0gVHJ1ZSksDQogICAgIENvbHVtbignY29tcGFueV9uYW1lJywgU3RyaW5nKDQw KSksDQoNCiApDQoNCiBhZGRyZXNzZXNfdGFibGUgPSBUYWJsZSgnYWRkcmVzc2VzJywgZGIsDQog ICAgICAgICAgICAgICAgICAgICAgICAgQ29sdW1uKCdhZGRyZXNzX2lkJywgSW50ZWdlciwNCiBT ZXF1ZW5jZSgnYWRkcmVzc19pZF9zZXEnLCBvcHRpb25hbD1UcnVlKSwgcHJpbWFyeV9rZXkgPSBU cnVlKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBDb2x1bW4oJ2NvbXBhbnlfaWQnLCBJbnRl Z2VyLA0KIEZvcmVpZ25LZXkoImNvbXBhbmllcy5jb21wYW55X2lkIikpLA0KICAgICAgICAgICAg ICAgICAgICAgICAgIENvbHVtbignYWRkcmVzcycsIFN0cmluZyg0MCkpLA0KICAgICAgICAgICAg ICAgICAgICAgICAgICkNCg0KIHBob25lc190YWJsZSA9IFRhYmxlKCdwaG9uZV9udW1iZXJzJywg ZGIsDQogICAgICAgICAgICAgICAgICAgICAgICAgQ29sdW1uKCdwaG9uZV9pZCcsIEludGVnZXIs DQogU2VxdWVuY2UoJ3Bob25lX2lkX3NlcScsIG9wdGlvbmFsPVRydWUpLCBwcmltYXJ5X2tleSA9 IFRydWUpLA0KICAgICAgICAgICAgICAgICAgICAgICAgIENvbHVtbignYWRkcmVzc19pZCcsIElu dGVnZXIsDQogRm9yZWlnbktleSgnYWRkcmVzc2VzLmFkZHJlc3NfaWQnKSksDQogICAgICAgICAg ICAgICAgICAgICAgICAgQ29sdW1uKCd0eXBlJywgU3RyaW5nKDIwKSksDQogICAgICAgICAgICAg ICAgICAgICAgICAgQ29sdW1uKCdudW1iZXInLCBTdHJpbmcoMTApKSwNCiAgICAgICAgICAgICAg ICAgICAgICAgICApDQoNCiBpbnZvaWNlX3RhYmxlID0gVGFibGUoJ2ludm9pY2VzJywgZGIsDQog ICAgICAgICAgICAgICAgICAgICAgIENvbHVtbignaW52b2ljZV9pZCcsIEludGVnZXIsDQogU2Vx dWVuY2UoJ2ludm9pY2VfaWRfc2VxJywgb3B0aW9uYWw9VHJ1ZSksIHByaW1hcnlfa2V5ID0gVHJ1 ZSksDQogICAgICAgICAgICAgICAgICAgICAgIENvbHVtbignY29tcGFueV9pZCcsIEludGVnZXIs DQogRm9yZWlnbktleSgiY29tcGFuaWVzLmNvbXBhbnlfaWQiKSksDQogICAgICAgICAgICAgICAg ICAgICAgIENvbHVtbignZGF0ZScsIERhdGVUaW1lKSwNCiAgICAgICAgICAgICAgICAgICAgICAg KQ0KDQogaXRlbXNfdGFibGUgPSBUYWJsZSgnaXRlbXMnLCBkYiwNCiAgICAgICAgICAgICAgICAg ICAgIENvbHVtbignaXRlbV9pZCcsIEludGVnZXIsIFNlcXVlbmNlKCdpdGVtX2lkX3NlcScsDQog b3B0aW9uYWw9VHJ1ZSksIHByaW1hcnlfa2V5ID0gVHJ1ZSksDQogICAgICAgICAgICAgICAgICAg ICBDb2x1bW4oJ2ludm9pY2VfaWQnLCBJbnRlZ2VyLA0KIEZvcmVpZ25LZXkoJ2ludm9pY2VzLmlu dm9pY2VfaWQnKSksDQogICAgICAgICAgICAgICAgICAgICBDb2x1bW4oJ2NvZGUnLCBTdHJpbmco MjApKSwNCiAgICAgICAgICAgICAgICAgICAgIENvbHVtbigncXR5JywgSW50ZWdlciksDQogICAg ICAgICAgICAgICAgICAgICApDQoNCg0KIGNvbXBhbmllc190YWJsZS5jcmVhdGUoKQ0KIGFkZHJl c3Nlc190YWJsZS5jcmVhdGUoKQ0KIHBob25lc190YWJsZS5jcmVhdGUoKQ0KIGludm9pY2VfdGFi bGUuY3JlYXRlKCkNCiBpdGVtc190YWJsZS5jcmVhdGUoKQ0KDQogY2xhc3MgQ29tcGFueShvYmpl Y3QpOg0KICAgICBkZWYgX19pbml0X18oc2VsZik6DQogICAgICAgICBzZWxmLmNvbXBhbnlfaWQg PSBOb25lDQogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToNCiAgICAgICAgIHJldHVybiAiQ29tcGFu eToiICsgcmVwcihnZXRhdHRyKHNlbGYsICdjb21wYW55X2lkJywgTm9uZSkpICsgIiAiDQogKyBy ZXByKGdldGF0dHIoc2VsZiwgJ2NvbXBhbnlfbmFtZScsIE5vbmUpKSArICIgIiArIHN0cihbcmVw cihhZGRyKSBmb3INCiBhZGRyIGluIHNlbGYuYWRkcmVzc2VzXSkNCg0KIGNsYXNzIEFkZHJlc3Mo b2JqZWN0KToNCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYpOg0KICAgICAgICAgcmV0dXJuICJBZGRy ZXNzOiAiICsgcmVwcihnZXRhdHRyKHNlbGYsICdhZGRyZXNzX2lkJywgTm9uZSkpICsgIiAiDQog KyByZXByKGdldGF0dHIoc2VsZiwgJ2NvbXBhbnlfaWQnLCBOb25lKSkgKyAiICIgKyByZXByKHNl bGYuYWRkcmVzcykgKw0KIHN0cihbcmVwcihwaCkgZm9yIHBoIGluIHNlbGYucGhvbmVzXSkNCg0K IGNsYXNzIFBob25lKG9iamVjdCk6DQogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToNCiAgICAgICAg IHJldHVybiAiUGhvbmU6ICIgKyByZXByKGdldGF0dHIoc2VsZiwgJ3Bob25lX2lkJywgTm9uZSkp ICsgIiAiICsNCiByZXByKGdldGF0dHIoc2VsZiwgJ2FkZHJlc3NfaWQnLCBOb25lKSkgKyAiICIg KyByZXByKHNlbGYudHlwZSkgKyAiICIgKw0KIHJlcHIoc2VsZi5udW1iZXIpDQoNCiBjbGFzcyBJ bnZvaWNlKG9iamVjdCk6DQogICAgIGRlZiBfX2luaXRfXyhzZWxmKToNCiAgICAgICAgIHNlbGYu aW52b2ljZV9pZCA9IE5vbmUNCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYpOg0KICAgICAgICAgcmV0 dXJuICJJbnZvaWNlOiIgKyByZXByKGdldGF0dHIoc2VsZiwgJ2ludm9pY2VfaWQnLCBOb25lKSkg KyAiICINCiArIHJlcHIoZ2V0YXR0cihzZWxmLCAnZGF0ZScsIE5vbmUpKSAgKyAiICIgKyByZXBy KHNlbGYuY29tcGFueSkgKyAiICIgKw0KIHN0cihbcmVwcihpdGVtKSBmb3IgaXRlbSBpbiBzZWxm Lml0ZW1zXSkNCg0KIGNsYXNzIEl0ZW0ob2JqZWN0KToNCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYp Og0KICAgICAgICAgcmV0dXJuICJJdGVtOiAiICsgcmVwcihnZXRhdHRyKHNlbGYsICdpdGVtX2lk JywgTm9uZSkpICsgIiAiICsNCiByZXByKGdldGF0dHIoc2VsZiwgJ2ludm9pY2VfaWQnLCBOb25l KSkgKyAiICIgKyByZXByKHNlbGYuY29kZSkgKyAiICIgKw0KIHJlcHIoc2VsZi5xdHkpDQoNCiBQ aG9uZS5tYXBwZXIgPSBtYXBwZXIoUGhvbmUsIHBob25lc190YWJsZSwgaXNfcHJpbWFyeT1UcnVl KQ0KDQogQWRkcmVzcy5tYXBwZXIgPSBtYXBwZXIoQWRkcmVzcywgYWRkcmVzc2VzX3RhYmxlLCBw cm9wZXJ0aWVzPXsNCiAgICAgJ3Bob25lcyc6IHJlbGF0aW9uKFBob25lLm1hcHBlciwgbGF6eT1G YWxzZSwgYmFja3JlZj0nYWRkcmVzcycpDQogICAgIH0pDQoNCiBDb21wYW55Lm1hcHBlciA9IG1h cHBlcihDb21wYW55LCBjb21wYW5pZXNfdGFibGUsIHByb3BlcnRpZXM9ew0KICAgICAnYWRkcmVz c2VzJyA6IHJlbGF0aW9uKEFkZHJlc3MubWFwcGVyLCBsYXp5PUZhbHNlLCBiYWNrcmVmPSdjb21w YW55JyksDQogICAgIH0pDQoNCiBJdGVtLm1hcHBlciA9IG1hcHBlcihJdGVtLCBpdGVtc190YWJs ZSwgaXNfcHJpbWFyeT1UcnVlKQ0KDQogSW52b2ljZS5tYXBwZXIgPSBtYXBwZXIoSW52b2ljZSwg aW52b2ljZV90YWJsZSwgcHJvcGVydGllcz17DQogICAgICdpdGVtcyc6IHJlbGF0aW9uKEl0ZW0u bWFwcGVyLCBsYXp5PUZhbHNlLCBiYWNrcmVmPSdpbnZvaWNlJyksDQogICAgICdjb21wYW55Jzog cmVsYXRpb24oQ29tcGFueS5tYXBwZXIsIGxhenk9RmFsc2UsIGJhY2tyZWY9J2ludm9pY2VzJykN CiAgICAgfSkNCg0KIG9iamVjdHN0b3JlLmNsZWFyKCkNCiBjMSA9IENvbXBhbnkoKQ0KIGMxLmNv bXBhbnlfbmFtZSA9ICdjb21wYW55IDEnDQoNCiBhMSA9IEFkZHJlc3MoKQ0KIGExLmFkZHJlc3Mg PSAnYTEgYWRkcmVzcycNCg0KIHAxID0gUGhvbmUoKQ0KIHAxLnR5cGUgPSAnaG9tZScNCiBwMS5u dW1iZXIgPSAnMTExMScNCg0KIGExLnBob25lcy5hcHBlbmQocDEpDQoNCiBwMiA9IFBob25lKCkN CiBwMi50eXBlID0gJ3dvcmsnDQogcDIubnVtYmVyID0gJzIyMjIyJw0KIGExLnBob25lcy5hcHBl bmQocDIpDQoNCiBjMS5hZGRyZXNzZXMuYXBwZW5kKGExKQ0KDQogYTIgPSBBZGRyZXNzKCkNCiBh Mi5hZGRyZXNzID0gJ2EyIGFkZHJlc3MnDQoNCiBwMyA9IFBob25lKCkNCiBwMy50eXBlID0gJ2hv bWUnDQogcDMubnVtYmVyID0gJzMzMzMnDQogYTIucGhvbmVzLmFwcGVuZChwMykNCg0KIHA0ID0g UGhvbmUoKQ0KIHA0LnR5cGUgPSAnd29yaycNCiBwNC5udW1iZXIgPSAnNDQ0NDQnDQogYTIucGhv bmVzLmFwcGVuZChwNCkNCg0KIGMxLmFkZHJlc3Nlcy5hcHBlbmQoYTIpDQoNCiBvYmplY3RzdG9y ZS5jb21taXQoKQ0KIG9iamVjdHN0b3JlLmNsZWFyKCkNCg0KIGEgPSBDb21wYW55Lm1hcHBlci5n ZXQoMSkNCiBwcmludCBhDQoNCiAjIHNldCB1cCBhbiBpbnZvaWNlDQogaTEgPSBJbnZvaWNlKCkN CiBpMS5kYXRlID0gZGF0ZXRpbWUuZGF0ZXRpbWUubm93KCkNCiBpMS5jb21wYW55ID0gYzENCg0K IGl0ZW0xID0gSXRlbSgpDQogaXRlbTEuY29kZSA9ICdhYWFhJw0KIGl0ZW0xLnF0eSA9IDENCiBp dGVtMS5pbnZvaWNlID0gaTENCg0KIGl0ZW0yID0gSXRlbSgpDQogaXRlbTIuY29kZSA9ICdiYmJi Jw0KIGl0ZW0yLnF0eSA9IDINCiBpdGVtMi5pbnZvaWNlID0gaTENCg0KIGl0ZW0zID0gSXRlbSgp DQogaXRlbTMuY29kZSA9ICdjY2NjJw0KIGl0ZW0zLnF0eSA9IDMNCiBpdGVtMy5pbnZvaWNlID0g aTENCg0KIG9iamVjdHN0b3JlLmNvbW1pdCgpDQogb2JqZWN0c3RvcmUuY2xlYXIoKQ0KDQogYyA9 IENvbXBhbnkubWFwcGVyLmdldCgxKQ0KIHByaW50IGMNCg0KIG9iamVjdHN0b3JlLmNsZWFyKCkN Cg0KIGkgPSBJbnZvaWNlLm1hcHBlci5nZXQoMSkNCiBwcmludCBpDQoNCiBhc3NlcnQgcmVwcihp LmNvbXBhbnkpID09IHJlcHIoYykNCiB9fX0NCg0KLS0gDQpUaWNrZXQgVVJMOiA8aHR0cDovL3d3 dy5zcWxhbGNoZW15Lm9yZy90cmFjL3RpY2tldC85Nj4NCnNxbGFsY2hlbXkgPGh0dHA6Ly9leGFt cGxlLmNvbS8+DQpNeSBleGFtcGxlIHByb2plY3Q= |